我有此管理员路线:
Route::group([
'namespace' => 'Auth',
], function () {
// Authentication Routes...
Route::get('login', 'LoginController@showLoginForm')->name('login_page');
Route::post('login', 'LoginController@login')->name('login');
Route::post('logout', 'LoginController@logout')->name('logout');
});
Route::group([
'middleware' => [
'auth:admin',
],
], function () {
// for all admins
Route::get('/', 'AdminController@index')->name('dashboard');
Route::get('home', 'AdminController@index')->name('dashboard');
Route::get('dashboard', 'AdminController@index')->name('dashboard');
// for administrator
// users
Route::group(['prefix' => 'users', 'as' => 'users.',], function () {
Route::get('all', 'UserController@index')->name('index');
Route::get('ajax', 'UserController@ajax')->name('ajax');
Route::get('create', 'UserController@create')->name('create');
Route::post('post', 'UserController@store')->name('store');
Route::get('show/{id}', 'UserController@show'); // ->where('id', '[0-9]+');
Route::post('change_status', 'UserController@change_status')->name('change_status');
Route::post('delete', 'UserController@delete')->name('delete');
});
});
我需要对create.blade
中的表单进行操作以存储数据:
<form method="POST" action="{{ route('users.store') }}">
但实际上,我看到此错误:
>“未定义路由[users.store]。(视图:C:\ xampp \ htdocs \ laravel-multiauth \ resources \ views \ admin \ pages \ users \ create.blade.php)“
用户组路由中未定义的路由器名称。我该如何解决?
请参阅the documentation以了解路由名称和使用route()
功能生成URL。
您必须使用完整的路由路径
<form method="POST" action="{{ route('users/post') }}">
或仅路线名称
<form method="POST" action="{{ route('store') }}">
我没看到任何问题。最快的答案是运行php artisan route:list
,然后查看您的路线是否存在
如果它存在并且没有问题,那么再运行php artisan route:clear
,如果它不起作用,那么我必须查看整个web.php
文件
尝试一下:
Route::prefix('users')->name('users.')->group(function() {
...
});