Как написать красноречивый запрос Laravel внутри функции модели? - PullRequest
0 голосов
/ 16 февраля 2019

На самом деле я не знаю, как извлечь данные из базы данных, используя функцию и запрос внутри модели. Пожалуйста, помогите мне, что я должен добавить внутри функции модели.

Вот контроллер

public function checkAdmin(Request $request){
        $data  = array();
        $data['email'] = $request->email;
        $data['password'] = $request->password;
        $found = AdminModel::checkAdmin($data);
        if($found == TRUE){
            echo "found";
        }
        else{
            echo "sorry";
        }
    }

Вот функция модели

public static function checkAdmin($data){
        $found = $this->where('email',$data['email'])->where('password',$data['password'])->first();
        return $found;
    }

1 Ответ

0 голосов
/ 18 февраля 2019

Какова цель функции checkAdmin?Вы пытаетесь подтвердить логин?Если да, Laravel сделает это для вас из коробки с помощью метода Auth::attempt:

$credentials = $request->only('email', 'password');

if (Auth::attempt($credentials)) {
    // Authentication passed...
    return redirect()->intended('dashboard');
}

https://laravel.com/docs/5.7/authentication#authenticating-users

Однако, чтобы ответить на ваш вопрос, вы можете сделать это следующим образом:

$userFound = AdminModel::where(['email' => $request->email, 'password] => $request->password)->count();

if($userFound){
    echo "found";
}
else{
    echo "sorry";
}
...