我已经按照本教程实现了Laravel-5.8电子邮件验证:https://laravel.com/docs/5.8/verification.我正试图保护一些未经验证的电子邮件用户的路由,如下所示:
Route::group(['middleware' => ['verified']], function () {
Route::get('/dashboard', 'DashboardController@dashboard')->name('dashboard');
Route::get('/backend', 'DashboardController@backend')->name('backend');
});
但我可以访问dashboard
,而无需验证我的电子邮件地址。
如何在不验证电子邮件的情况下阻止此访问?
这通常是一件非常简单的事情,你的应用程序中可能会出现一个小错误,所以这里有一个清单可以快速查看。
-
您正在测试的用户在数据库中是否有空的
email_verified_at
字段? -
您是否在用户模型中添加了
implements MustVerifyEmail
?
class User extends Authenticatable implements MustVerifyEmail
- 您是否在
routes/web.php?
中将verify设置为true
Auth::routes(['verify' => true]);
您已经将中间件正确地添加到路由中,所以这不是问题所在。
除此之外,我们没有太多信息可供参考。