При попытке фильтрации с использованием только имени пользователя или кода электронной почты работает нормально. Но когда я пытаюсь отфильтровать как по электронной почте, так и по имени пользователя, возвращается пустое значение. Что мне не хватает
Модель пользователя
public function scopeEmail($query, $email)
{
$query->where('email','=', $email);
}
public function scopeUsername($query, $username)
{
$query->where('username','=', $username);
}
Контроллер:
public function filter(Request $request)
{
$q = User::query();
$email = $request->input('email');
$username= $request->input('username');
if (isset($email))
{
// simple where here or another scope, whatever you like
$q->Email($request->input('email'));
}
if (isset($username))
{
$q->Username($request->input('username'));
}
//execute
$results = $q->get();
return response()->json(['issError'=>0, 'errorCode'=>0,'message'=>$results],200);
}