Laravel 5 / Spark - передача данных из запроса формы контроллеру

Работая в Laravel Spark и имея настраиваемую конечную точку API, которая проверяет учетные данные пользователя, но не регистрирует их, просто возвращает данные пользователя.

У меня есть запрос формы, который проверяет адрес электронной почты и пароль на необходимость, а затем я использую

withValidator()

чтобы еще раз проверить пароль.

public function rules()
{
    return [
        'email' => 'required|email|exists:users',
        'password' => 'required'
    ];
}

public function withValidator($validator)
{
    $validator->after(function ($validator) {

        $user = User::where('email', $this->email)->first();

        if ( $user && !Hash::check($this->password, $user->password) ) {
            $validator->errors()->add('password', 'Incorrect password');
        } else {
            // Pass the user to the controller
        }

    });
}

В моем контроллере я хочу иметь возможность вернуть пользователя, но я не хочу запускать процесс проверки хэша и т. Д.

Я просто хотел бы уметь:

return $request->user

Или похожие.

Есть ли способ сделать это?


person Lovelock    schedule 12.07.2017    source источник


Ответы (1)


Почему бы просто не сделать это в контроллере?

$user = User::where('email', $request->email)->first();

Если вы поместите это после валидатора, вы уже знаете, что пользователь действителен, иначе валидатор выйдет из строя до того, как дойдет до этой точки.

person Samsquanch    schedule 13.07.2017