0
我想根據查詢得到結果,但不知道如何以這種方式執行此操作。我有屬於一個用戶的項目。所以一個項目有一個user_id。
用戶然後屬於一個部門,所以用戶表具有department_id。基於查詢的返回模型
如果我拉一個項目的結果,我看到這樣的事情。
id: 3
projectName: This is a project
user_id: 99
deleted_at: 2016-06-15 09:28:00
created_at: 2016-06-14 14:34:16
updated_at: 2016-06-15 09:28:00
如果我拉一個用戶的數據我看
id: 99
userName: Some Name
userEmail: [email protected]
active: 1
department_id: 4
created_at: 2016-06-13 09:56:59
updated_at: 2016-06-13 12:16:28
最後,如果我檢查的部門,我得到
id: 4
departmentName: Department A
created_at: 2016-06-09 12:09:43
updated_at: 2016-06-15 08:03:45
在我的控制,我可以做下面讓所有項目
$projects = Project::dateDescending()->get();
不過,這一次我只希望得到按部門A的用戶作了目前該項目我做
$projects = Project::dateDescending()->get();
if(!empty($projects)) {
foreach ($projects as $project) {
dd($project->user->department->where('departmentName', 'Department A'));
}
}
上述的問題是,它返回一個部門的對象,而不是項目對象。 所以我的計劃是獲得部門A中的用戶所做的所有項目。我該如何去做這件事?
感謝
你也可以在'Department'和'Project'之間定義'hasManyThrough'關係,以避免輸入一個嵌套的資源。 – EricDS
完美地工作:-)我設法提出我自己的解決方案,但它使用數據庫來做原始連接。你的方式更清潔。謝謝 –