我正在使用Laravel 4在一個項目中使用postgres-db。公共模式是管理員的主要模式。所有其他自定義模式均適用於客戶端。所有模式都具有相同的表設置。Laravel 4,從多個postgresql模式中檢索數據
但是對於某些客戶端,必須檢索數據多個模式。這可能與L4?或者我必須編寫自定義查詢?
這些都是我爲DB連接
'pgsql' => array(
'driver' => 'pgsql',
'host' => 'localhost',
'database' => 'postgres',
'username' => 'postgres',
'password' => 'root',
'charset' => 'utf8',
'prefix' => '',
'schema' => 'public, client1, client2',
),
設置,但是當我預成型查詢:
$users = Users::all()
**OR**
$users = DB::select(DB::raw('SELECT * FROM client1.users, client2.users'));
我只能從公共檢索用戶。 我錯過了什麼,或者Laravel不可能這麼做嗎?
在此先感謝
感謝你的答案,但我希望能在一個查詢中從多個模式獲取記錄。但經過一番調查,我發現這是不可能的。或者我錯了? –
您應該能夠以與單個模式相同的方式定義模型上的關係(我已經完成了這一工作並且它可行),並使用Eloquent查詢您的數據。流暢的查詢生成器應該以相同的方式工作,只要確保您的表格是按照上面顯示的那樣定義的。 – adam