渴望加载的奇怪行为Laravel / Lumen 5

时间:2016-08-31 19:12:24

标签: laravel eager-loading lumen

我有一个查询。

 $item = Item::with('relationship')->get();

工作正常。它渴望加载相关项目。 现在关于该关系项目,我有另一种关系。

 function you_like(){
     return $this->hasOne('App\Like','item_id')->where('liker_id',Auth::user()->id);
 } 

工作正常。当我这样做时,它可以工作,我可以访问它。

 dd((boolean)$item->relationship->you_like)

准确显示我想要显示的内容。是的,如果喜欢的话。如果没有,则为假。 但是....因为我有很多物品清单,所以无论我喜欢与否,我都想加载。像这样。

 $item = Item::with('relationship','relationship.you_like')->get();

并试过这个

 $item = Item::with('relationship')->with('relationship.you_like')->get();

现在,当我dd((布尔)$ item-> relationship-> you_like)时,它返回null / false,即使它应该为真。

这里给出了什么? 是否与在关系中使用Auth :: user()类有关?这就是我的直觉告诉我的。

0 个答案:

没有答案