我有Review
和User
模型。在User
模态中,我有hasMany('App\Review')
,在Review
s模型中,我有belongsTo('App\User')
。我称之为:
Review::where('user_id', $user)->with('user')->paginate(4);
这可行,我得到撰写评论的用户以及评论本身:
但是,在“评论”表中,我也有他们评论的人(称为fulfiller_id
)。我想将每条评论与获得评论的用户一起加载。我做了这样的事情:
Review::where('user_id', $user)->with('fulfiller_id')->paginate(4);
但这给了我一个错误:
调用模型[App \ Review]上未定义的关系[fulfiller_id]。
如何将user
下的fulfiller_id
与每个review
一起附加?
答案 0 :(得分:2)
您可以在Review
模型上建立第二种关系:
Review.php
public function user()
{
return $this->belongsTo(User::class);
}
public function fulfiller()
{
return $this->belongsTo(User::class, 'fulfiller_id');
}
然后您可以加载:
Review::where('user_id', $user)->with(['user','fulfiller'])->paginate(4);