我知道我們可以通過設置我可以爲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'改爲你在配置文件中定義的連接名稱。 –