Я успешно установил промежуточное программное обеспечение Laravel, чтобы проверить, зарегистрирован ли пользователь в первый раз (с помощью простой проверки нулевого значения в $user->last_logged_in_date field
). Я хочу, чтобы эти новые пользователи были перенаправлены на просмотр /password/reset
, чтобы они могли заполнить свой адрес электронной почты и получить ссылку, отправленную им.Laravel - Слишком много переадресаций
Я получаю сообщение о
Слишком много переадресаций произошло при попытке открыть «LOCALHOST: 8000»
Это может произойти, если вы откроете страницу, перенаправляется открыть другую страницу который затем перенаправляется, чтобы открыть исходную страницу.
Моих контроллеров все было $this->middleware(['auth', 'new_user']);
ссылкой, и мой промежуточный слой выглядит следующим образом:
<?php
namespace App\Http\Middleware;
use Closure;
use App\Http\Controllers\Auth;
class CheckIfNewUser
{
public function handle($request, Closure $next)
{
$user = $request->user();
if (! is_null($user->last_logged_in_date)) {
return $next($request);
}
return redirect('password/reset');
}
}
Любых рекомендации?
Если контроллер сброса пароля также имеет «$ this-> middleware (['auth', 'new_user']); 'это вызовет бесконечное перенаправление – Moak
Спасибо за ответ. Контроллер сброса пароля имеет только $ this-> middleware ('guest'); Любые другие идеи, в которых я могу ошибаться? – Ows
Что относительно контроллера, который показывает домашнюю страницу? есть ли какие-нибудь средние? – Maraboc