Пользователь должен получить одобрение администратора после регистрации для входа и перенаправить на страницу входа сразу после регистрации

В моем приложении Laravel 5.5 с системой аутентификации по умолчанию я пытаюсь реализовать процедуру входа в систему, как это,

1. У меня есть is_approved поле в users таблица по умолчанию 0;

2. Если администратор одобрил пользователя, он будет равен 1, и пользователь сможет войти в систему.

3. Пользователь будет перенаправлен на страницу входа после регистрации с сообщением «Вы
были успешно зарегистрированы. Пожалуйста, дождитесь одобрения администратора «.

Поэтому, когда пользователь регистрируется, его следует перенаправить на страницу входа, а не на домашнюю страницу, и если он пытается войти на страницу входа с помощью адреса электронной почты и пароля, он должен сказать: «Вы еще не одобрены!».

Что мне нужно изменить для этого в системе аутентификации Laravel?

3

Решение

Я переопределяю и изменяю register метод в моем RegisterController ,

public function register(Request $request)
{
$this->validator($request->all())->validate();

event(new Registered($user = $this->create($request->all())));

return redirect()->back()->with('success', 'You have been successfully registered!. Please wait for the admin approval');
}

и в моем LoginController Я переопределяю и изменяю credentials метод,

public function credentials(Request $request)
{
return [
'email' => $request->email,
'password' => $request->password,
'is_approved' => 1,
];
}

Работает отлично!

2

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector