0

我做了一些更改config/app以使用前端选择的多个数据库,现在我必须告诉\Request()->header('database')我要访问哪个数据库。

它工作得很好,问题是:当我尝试执行任何工匠命令时,我的逻辑死了,因为没有通知数据库。

所以我需要在artisan commands中通知数据库,如下所示:

php artisan migrate --database=sandiego_school
php artisan migrate:rollback --database=newyork_school 

我如何观察所有命令以获取参数?

4

1 回答 1

1

在这种情况下,我猜您应该创建自己的命令来覆盖您要调用的命令,然后在命令的句柄方法中,您可以指定要处理的连接:

\DB::setDefaultConnection($connexion);

或者您也可以简单地将标头添加到请求中:

request()->headers->set('database', $dbname)
于 2019-11-21T21:16:20.380 回答