如何区分laravel 5.5 auth::routes(),因为它在前端和后端使用相同名称的路由
web.php php artisan路由:列表 我得到 我将auth文件夹复制到admin和web文件夹如何区分laravel 5.5 auth::routes(),因为它在前端和后端使用相同名称的路由,laravel,authentication,routes,Laravel,Authentication,Routes,web.php php artisan路由:列表 我得到 我将auth文件夹复制到admin和web文件夹 Method | GET|HEAD URI | login Name | login Action |App\Http\Controllers\Web\Auth\LoginController@showLoginForm Mid
Method | GET|HEAD
URI | login
Name | login
Action
|App\Http\Controllers\Web\Auth\LoginController@showLoginForm Middleware
| web,guest
Method |GET|HEAD
URI | admin/login
Name | login
Action
|App\Http\Controllers\Admin\Auth\LoginController@showLoginForm
Middleware
|web,guest:admin
两个php都有相同的表单操作
views/admin/auth/login.blade.php
views/web/auth/login.blade.php
或
它可以显示不同的login.blade.php页面
但是{{route('login')}}始终指向url
localhost:8000/admin/login
不能指向
localhost:8000/admin/login
无论url是localhost:8000/login
或localhost:8000/admin/login
如何在路由链接上区分相同的路由名称
您是否清除了路由缓存
php artisan路由:缓存
每次更换路线后都要这样做
看看这个例子:
localhost:8000/login
在我使用php artisan route:clear之后,结果是一样的,我发布了两张图片来显示我的问题。使用Auth::routes()函数可以生成相同的路由名称。我可以自己编写路由器路径,但是它失去了auth::routes()函数的便利性。然后您需要更改auth:routes()。更好的解决方案是编写自己的登录模块-然后您可以自由设置路由。
localhost:8000/admin/login
localhost:8000/admin/login
localhost:8000/login
Route::group([
'module' => 'Admin',
'namespace' => 'App\Modules\Admin\Controllers',
'prefix' => 'admin',
'middleware' => ['web']
], function() {
Route::group([
'prefix' => 'user'
], function() {
Route::get('/index', [
'as' => 'get.index-user.index',
'uses' => 'IndexUserController@getIndex'
]);
});
Route::group([
'prefix' => 'admin'
], function() {
Route::get('/index', [
'as' => 'get.index-admin.index',
'uses' => 'IndexAdminController@getIndex'
]);
});
});