我正在使用luman和Database Query Builder從數據庫中獲取完整的用戶信息。laravel查詢生成器:加入依賴於主要內容
首先,請在我的數據庫結構以鎖: 我有一個表稱爲users
和一系列其他表的使用有關的用戶羣體(例如:secretaries
,patients
,doctors
和admins
)用於存儲有關的其他信息用戶。
此外,要確定用戶訪問,我有user
表中的level
列,它可以有一個值爲enum:'admin', 'doctor', 'secretary', 'patient'
。
所以,我想通過join
和select
得到使用一個查詢這些信息。
我的訓練碼是這樣的:
$userInfo = User::where("userID", $userID)
->limit(1)
->join('[GROUP_TABLE_NAME]', function ($join) {
$join->on('user.userID', '=', '[GROUP_TABLE_NAME]' .'.'.
'[GROUP_NAME]' . 'ID');
})
->get();
的GROUP_NAME
來自level
列上user
表,並可以基於該GROUP_NAME
值建成GROUP_TABLE_NAME
(例如:['secretary' => 'secretaries' , 'patient' => 'patients' , ...]
) 。
任何想法來處理使用laravel查詢生成器的連接結構?
查看多態關係https://laravel.com/docs/5.4/eloquent-relationships#polymorphic-relations –