2014-03-07 94 views
1

基本上這個工作雄辯:急於加載選擇約束?可能?

Section::with('fields')->find($id); 

也:

Section::with(['fields' => function ($q) { 
    $q->select('*'); 
}])->find($id); 
然而

Section::with(['fields' => function ($q) { 
    $q->select('label', 'position'); 
}])->find($id); 

不會加載關係。

我還沒有找到有關急切加載約束的文檔中的東西,除了使用'where',所以我的問題是,這甚至有可能嗎?

在此先感謝。

回答

2

啊,原來你必須明確地包括SELECT子句中的section_id :)

因此,這將如預期:

Section::with(['fields' => function ($q) { 
    $q->select('section_id', 'label', 'position'); 
}])->find($id); 
+0

包括ID是關鍵。我發現沒有其他答案提到了這一點。感謝您的跟蹤! –

+0

現在我很困惑 – iwyg