7
我正在研究基於Laravel 4的網站,該網站可用於多個數據庫。我需要在每個請求上運行一個查詢,以從其他數據庫中提取記錄。爲模型設置數據庫?
有沒有辦法我可以以某種方式將這個特定的模型綁定到其他數據庫,所以我可以像往常一樣檢索它?
$client = Client::find(Session::get('client_id'));
任何意見讚賞。
感謝
我正在研究基於Laravel 4的網站,該網站可用於多個數據庫。我需要在每個請求上運行一個查詢,以從其他數據庫中提取記錄。爲模型設置數據庫?
有沒有辦法我可以以某種方式將這個特定的模型綁定到其他數據庫,所以我可以像往常一樣檢索它?
$client = Client::find(Session::get('client_id'));
任何意見讚賞。
感謝
// Model
class Client extends Eloquent
{
protected $connection = 'masterDb';
}
// config/database.php
'masterDb' => array(
'driver' => 'mysql',
'host' => 'localhost',
'database' => 'name',
'username' => 'user',
'password' => 'pass',
'charset' => 'utf8',
'collation' => 'utf8_unicode_ci',
'prefix' => '',
),
如你願意,你可以創建任意多個命名連接。將其中一個設置爲默認值, 每個模型可以稍後使用這些連接中的任何一個。
請注意:通過調用DB :: table(「client」)(而不是Client :: query())創建查詢仍然會使用默認連接返回查詢 – ThoQ
使用DB :: table語法時,您需要執行:'DB :: connection('masterDb') - > table(「client」)' –