【发布时间】:2015-07-02 21:58:46
【问题描述】:
所以当你在通配符子域组路由中定义一个资源控制器时类似于这样:
Route::group(array('domain' => '{subdomain}.example.com'), function() {
Route::resource('users', 'UserController');
});
在 RouteServiceProvider 上
$router->model('user', 'App\User');
在 UserController 的 show 方法上:
public function show($user)
{
return $user;
}
我得到的是子域名而不是用户资源。这是因为 subdomain 参数被传递给控制器方法,我必须像这样更改它们:
public function show($subdomain, $user)
{
return $user;
}
我只是不想将 subdomain 参数添加到我的应用程序中的每个控制器方法,因为我不会对它做任何事情。我在中间件中使用 subdomain 参数进行一些配置更改。
我该怎么做才能不将子域作为参数传递给控制器?
【问题讨论】:
-
您能找到任何解决方案吗?
-
我放弃并最终在每个控制器方法中包含子域参数。不过,在某些情况下会派上用场。特别是当我需要将参数传递给视图时。