我从laravel创建了auth类,现在我想知道如何只为登录系统的用户设置/ register页面?
我的路线是:
Route::group(['middleware' => ['web']], function () {
//
Route::get('/', 'Auth\AuthController@getLogin');
});
Route::group(['middleware' => 'web'], function () {
Route::auth();
Route::get('/home', 'HomeController@index');
//Route::get('/register', 'Auth\AuthController@getRegister');
});
答案 0 :(得分:0)
对于身份验证网址,只需添加一个auth
中间件,在登录用户后即可使用。请遵循以下代码:
Route::group(['middleware' => ['web','auth']], function () {
Route::get('/register', 'YourController@getRegister');
});
答案 1 :(得分:0)
您必须使用中间件来过滤用户。 在身份验证的情况下,有一个内置的中间件 称为'auth' 您可以按照AnowarCst向您展示的组中间件进行过滤 或者像这样的单一路线:
Route::get('/register', [
'middleware' => 'auth',
'yourController@yourFunction'
]);
阅读文档以便更好地理解 MIDDLEWARE
不要害怕,它比它看起来更简单。 :)
答案 2 :(得分:0)
我解决了这个问题:
public function __construct()
{
$this->middleware('guest', ['except' => ['logout', 'register', 'showRegistrationForm']]);
$this->middleware('auth', ['only' => ['register', 'showRegistrationForm']]);
}
我的routes.php
Route::group(['middleware' => ['web']], function () {
Route::get('/', 'Auth\AuthController@getLogin');
});
Route::group(['middleware' => 'web'], function () {
Route::Auth();
Route::get('/dashboard', 'HomeController@index');
});
Route::group(['middleware' => ['web', 'auth']], function () {
Route::get('/register', 'Auth\AuthController@showRegistrationForm');
});
谢谢你们。