Laravel 方法 [index@index] 不存在
Laravel Method [index@index] does not exist
我有 Laravel 4.2 个应用程序并将其更新为 Laravel 5.4。为此,我安装了新的 Laravel 5.4 并迁移了路由、控制器视图等
我想保护 /warehouse 之后的所有页面,例如 /warehouse/dashboard、/warehouse/accounts 等等,除了 /warehouse/login 页面。我已经搜索并使用了这条路线,但它无法正常工作。
谁能告诉我正确的身份验证方法是什么。
Route::group(['middleware' => ['auth']], function() {
// uses 'auth' middleware
Route::resource('/warehouse','WarehouseController@index');
});
我的登录和验证路线是
Route::get('/warehouse/login', array('as' => 'WarehouseAdminLogin', 'uses' => 'WarehouseController@login'));
Route::post('/warehouse/verify', array('as' => 'WarehouseAdminVerify', 'uses' => 'WarehouseController@verify'));
对于Route:resource
,控制器后无需添加函数名。
所以试试这个:
Route::resource('/warehouse','WarehouseController');
对于 Auth
中间件,您可以这样做:
Route::middleware(['auth']->group(function() {
// Auth routes
});
很明显,登录路由不应该在 auth
中间件内!
新来宾用户如何查看登录页面?
在 auth
中间件之外使用 Auth 路由:
Route::get('login', 'Auth\LoginController@showLoginForm')->name('login');
Route::post('login', 'Auth\LoginController@login');
Route::get('logout', 'Auth\LoginController@logout')->name('logout');
我有 Laravel 4.2 个应用程序并将其更新为 Laravel 5.4。为此,我安装了新的 Laravel 5.4 并迁移了路由、控制器视图等
我想保护 /warehouse 之后的所有页面,例如 /warehouse/dashboard、/warehouse/accounts 等等,除了 /warehouse/login 页面。我已经搜索并使用了这条路线,但它无法正常工作。
谁能告诉我正确的身份验证方法是什么。
Route::group(['middleware' => ['auth']], function() {
// uses 'auth' middleware
Route::resource('/warehouse','WarehouseController@index');
});
我的登录和验证路线是
Route::get('/warehouse/login', array('as' => 'WarehouseAdminLogin', 'uses' => 'WarehouseController@login'));
Route::post('/warehouse/verify', array('as' => 'WarehouseAdminVerify', 'uses' => 'WarehouseController@verify'));
对于Route:resource
,控制器后无需添加函数名。
所以试试这个:
Route::resource('/warehouse','WarehouseController');
对于 Auth
中间件,您可以这样做:
Route::middleware(['auth']->group(function() {
// Auth routes
});
很明显,登录路由不应该在 auth
中间件内!
新来宾用户如何查看登录页面?
在 auth
中间件之外使用 Auth 路由:
Route::get('login', 'Auth\LoginController@showLoginForm')->name('login');
Route::post('login', 'Auth\LoginController@login');
Route::get('logout', 'Auth\LoginController@logout')->name('logout');