[英]How to use Multi table queries in Laravel without using Eloquent Relationships
[英]How should I use Laravel Eloquent queries and use relationships?
我有一個User
,其模型belongsTo
一個Department
。
因此,部門獲得了ID和名稱字段。
在用戶模型中,我得到了:
public function department() {
return $this->belongsTo('Department');
}
這樣,我可以執行以下操作: Auth::user()->department->name
獲取部門用戶所屬的實際名稱。
但是,當我打電話給某些用戶時,我想不出獲取包含其部門屬性和名稱的多行的最佳方法。
我寫:
$users = User::all();
foreach ($users as $user) {
$user -> department = Department::find($user->department_id)->name;
}
有一個更好的方法嗎?
您可以急於加載相關模型,以便僅通過一個數據庫查詢即可為所有用戶加載它們,並將其包含在JSON輸出中:
$users = User::with('department')->get();
看來您已經有了用戶模型和部門模型之間的關系。 因此,您可以像使用Auth()一樣調用它。
$users = User::all();
foreach ($users as $user) {
echo $user->department->name ;
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.