告诉我如何通过 10 个参数实现用户过滤器?
我试试这样
$gender = 0;
if (Auth::user()->attributes->gender == 1){
$gender = 2; //Выводим деушек , если текущий пользователь парень
}
if (Auth::user()->attributes->gender == 2){
$gender = 1; //Выводим парней , если текущий пользователь девушка
}
$users = User::filter($request->all(),$gender)
->orderBy('users.id','asc')->get();
但没有任何作用
public function scopeFilter($query,$request,$gender)
{
$query->leftJoin('user_attributes','user_attributes.user_id',
'=','users.id');
$query->select('users.id','users.slug','users.name',
'user_attributes.fullname','user_attributes.age',
'user_attributes.avatar',
'user_attributes.city');
$query->where('user_attributes.gender','=', $gender);
return $query;
}
从来没有这样做过。我会做这样的事情:
好吧,同时,模型中当然应该有一个arrtibutes()方法,带有与属性关系的描述。