我看到Laravel 5.2改变了routes.php
使用。
事实上,旧的:
Route::controllers([
'auth' => 'Auth\AuthController',
'password' => 'Auth\PasswordController',
]);
现在不行。
相反,我认为最好使用:
Route::Auth();
但是这种方法不像它一样提供密码和注册路由......
实际上,我使用我在Stack Overflow上看到的解决方案,使用get和post方法:
// Authentication Routes...
Route::get('login', 'Auth\AuthController@showLoginForm');
[...]
// Registration Routes...
Route::get('register', 'Auth\AuthController@showRegistrationForm');
[...]
// Password Reset Routes...
Route::get('password/reset/{token?}','Auth\PasswordController@showResetForm');
[...]
这非常糟糕,为这个新的Laravel版本更好地使用5.2 route.php文件吗?
感谢您的帮助!
答案 0 :(得分:10)
自Laravel 5.2以来,身份验证系统更容易启动和运行。您只需运行此命令:
php artisan make:auth
这将负责设置必要的身份验证资源:路由定义,视图等。Laravel Documentation中有关于该主题的更多信息。您还可以查看this article以查看Laravel 5.2中新增的其他功能。
答案 1 :(得分:3)
供应商/ laravel /框架/ SRC /照亮/路由/ Router.php
去找这个文件的auth方法,定义所有路由
答案 2 :(得分:2)
愿这段代码帮助你..
Route::get('auth/login', 'Auth\AuthController@getLogin');
Route::post('auth/login', 'Auth\AuthController@postLogin');
Route::get('auth/logout', 'Auth\AuthController@getLogout');
Route::get('auth/confirm/{token}', 'Auth\AuthController@getConfirm');
密码
Route::get('password/email', 'Auth\PasswordController@getEmail');
Route::post('password/email', 'Auth\PasswordController@postEmail');
Route::get('password/reset{token}','Auth\PasswordController@getReset');
Route::post('password/reset', 'Auth\PasswordController@postReset');
答案 3 :(得分:0)
如果有人在使用新的身份验证系统访问/登录和/注册时遇到问题。你应该看看session documentation。
存储会话的方式(或某些部分)已更改。您必须设置会话表。如何做到这一点将在文档中解释。
答案 4 :(得分:0)
您可以使用别名Route:
Route::get('auth/login', ['as'=>'getLogin', 'uses'=>'Auth\AuthController@showLoginForm'];
Route::post('auth/login', ['as'=>'postLogin', 'uses'=>'Auth\AuthController@postLogin'];
在Controller中创建公共功能:
public function showLoginForm() {
return view('auth.login');
}
public function postLogin(Request $data) {
$users = new User();
$users->username = $data->txtUsername;
...
}