【发布时间】:2018-02-27 22:36:38
【问题描述】:
我有一个简单的应用程序,在 RouteServiceProvider 中有一个组。
// Web routes
protected function mapWebRoutes()
{
Route::group(['domain' => 'example.com']), function()
{
Route::middleware('web')
->namespace($this->namespace);
->group(base_path('routes/web.php'));
});
// Match any other domains or subdomains
Route::group(['domain' => '{domain}'], function()
{
Route::middleware('web')
->namespace($this->namespace)
->group(base_path('routes/org.php'));
});
}
在routes/web.php 我可以打电话给Auth::routes(); 很好;
但是在routes/org.php 中,我从我的视图中得到了一个缺少的必需参数,这些参数需要命名的身份验证路由(默认为 laravel)
“缺少 [Route: login] [URI: login] 所需的参数。(查看:.../resources/views/layouts/loginmenu.blade.php)(查看:..”
【问题讨论】:
-
我认为 Auth::routes() 需要是全局的,不仅特定于子域,而且您会收到此错误,因为您的 example.com 正在寻找登录路径但没有找到它。为了让它工作,你可以在 web.php 中包含你的
org.php并且应该可以工作 -
为什么需要使用其他路由器? - 我认为这没有必要
-
@kamiyar 除了登录/注册之外,大多数视图都是独一无二的。示例:基于路由组的 get('/' , ) 的差异控制器。宁愿在有组织的文件中而不是在嵌套函数中执行此操作。
标签: laravel