我知道我们可以通过设置我可以为laravel中的模型方法指定不同的mysql连接吗?
protected $connection = 'my_db';
指定特定模型MySQL连接,但有没有办法来指定比的模型使用,具体的方法不同的连接。
例如,如果我的模型使用my_db
作为默认连接,但我希望模型方法foo()
使用不同的连接my_db1
。我该怎么做?
我知道我们可以通过设置我可以为laravel中的模型方法指定不同的mysql连接吗?
protected $connection = 'my_db';
指定特定模型MySQL连接,但有没有办法来指定比的模型使用,具体的方法不同的连接。
例如,如果我的模型使用my_db
作为默认连接,但我希望模型方法foo()
使用不同的连接my_db1
。我该怎么做?
雄辩使用查询生成器在引擎盖下,所以你可以尝试在模型的方法使用connection()
:
return $this->connection('foo')->where('id', 1)->get();
我的连接名是我的'.env'文件中定义'my_db1'。我的模型方法就像'public function foo(){}'。我想'foo()'访问差异连接。 –
您需要在'/ config/database.php'配置文件中定义您在app中使用的所有连接。然后,只要在构建查询时使用'connection()'。如果你的查询在模型中,只需使用我的答案中的代码并将'foo'改为你在配置文件中定义的连接名称。 –