Laravel 4 如何使用控制器处理Laravel 4子域路由,将子域作为参数传递
遵循Laravel 4关于路由的文档,我一直在尝试创建一个域路由,该路由将处理通配符子域并将其传递给控制器操作,但传递参数时遇到了问题Laravel 4 如何使用控制器处理Laravel 4子域路由,将子域作为参数传递,laravel-4,subdomain,argument-passing,laravel-routing,Laravel 4,Subdomain,Argument Passing,Laravel Routing,遵循Laravel 4关于路由的文档,我一直在尝试创建一个域路由,该路由将处理通配符子域并将其传递给控制器操作,但传递参数时遇到了问题 Route::group(array('domain' => '{subdomain}.myapp.com'), function() { Route::get('/', function($subdomain) { die($subdomain); }); }); 如果我这样写路由,它会打印出子域,不管它是什么。
Route::group(array('domain' => '{subdomain}.myapp.com'), function()
{
Route::get('/', function($subdomain)
{
die($subdomain);
});
});
如果我这样写路由,它会打印出子域,不管它是什么。问题是,我不想在routes.php文件中编写处理这些情况的代码,而是使用一个控制器来处理所有情况,而无需从subdomain.myapp.com重定向到myapp.com/Controller/action/subdomain。
比如说:
Route::group(array('domain' => '{subdomain}.myapp.com'), function()
{
Route::get('/', 'MyController@myAction', $subdomain);
});
在这种情况下,如何将{subdomain}参数传递给控制器?似乎早晨比晚上聪明。我去了一个调度解决方案,所以如果其他任何人有一个更优雅的解决方案,请随时张贴,我会接受你的答案,而不是
Route::group(array('domain' => '{subdomain}.myapp.com'), function()
{
Route::get('/', function($subdomain) {
$request = Request::create('/myRoute/' . $subdomain, 'GET', array());
return Route::dispatch($request)->getContent();
});
});
Route::get('myRoute/{subdomain}', 'MyController@myAction');