我是Laravel的新手,所以请不要为我的问题而杀了我。我正在尝试进行电子邮件验证。我进行了搜索,但找不到适合我的情况的答案。
控制器
class HomeController extends Controller
{
public function __construct()
{
$this->middleware('auth');
$this->middleware('verified');
$this->middleware('auth', ['except' => ['index', 'show']]);
}
public function index()
{
return view('home');
}
}
电子邮件验证效果很好,并向我发送了一封电子邮件。我的问题是登录后,网站应该将用户带到主页,但是它将用户带到“ / email / verify”页面。即使我尝试在URL中写入/ home,它也会重定向到“ / email / verify”。我不知道我的代码有什么问题。
路线
Auth::routes(['verify' => true]);
Route::get('profile', function () {
// Only verified users may enter...
})->middleware('verified');
Route::get('/home', 'HomeController@index')->name('home');
// Admin Role route
Route::get('/admin', 'AdminController@index');
email verification page的屏幕截图。
答案 0 :(得分:0)
根据显示的内容,您似乎尚未验证登录用户的电子邮件。
如果您想避免使用某些控制器方法进行电子邮件验证,只需执行与auth相同的操作即可。
尝试执行以下操作。
public function __construct()
{
$this->middleware('auth', ['except' => ['index', 'show']]);
$this->middleware('verified', ['except' => ['index', 'show']);
}
请不要忘记将答案标记为有效,如果有帮助并投赞成票。
亲切的问候。