我有一个用户表,并且在通过“ status” =“ 1”的属性用其外表(user_details)过滤集合之后,我试图将数据返回到视图。
我研究并尝试了许多在线建议的方法,例如
$users = Users::whereHas('details_id', function($query) {
$query->where('status', '1');
})->get()->paginate(15);
但是我得到
的错误调用未定义的方法App \ Models \ User :: details_id()
下面是我的用户模型:-
public function user_details()
{
return $this->hasOne(UserDetails::class, "id");
}
答案 0 :(得分:0)
使用has
或whereHas
时,应使用关系的名称(方法名称),而不要使用与它们相关的字段名称:
$users = Users::whereHas('user_details', function($query) {
$query->where('status','1');
})->paginate(15);