我有一個Laravel安裝,我希望在其上運行3個站點(附加域)。我正在使用Laravel的路由分組方法來抓取每個域。但是,我需要能夠知道我在每個組內部使用哪個域。做這個的最好方式是什麼?我有以下代碼:將路由組中的變量傳遞給Laravel 4中的路由功能
Route::group(array('domain' => 'domainone.com'), function($domain = 'domainone')
{
Route::get('/', function($domain) {
//
});
});
^哪個行不通。
notes建議在URL中使用通配符,例如。
Route::group(array('domain' => '{domain}.com'), function()
{
Route::get('/', function($domain) {
//
});
});
但是,我更喜歡不同的方法,因爲我在本地服務器的開發過程中無法真正使用它。有沒有更像我的第一種方法,我可以手動爲每個域聲明一個鍵?
編輯:我還需要將該域變量傳遞給控制器,我也正在努力解決如何做?
謝謝。
EDIT 2
我的問題是,我不使用子域名,我使用域;我有3個獨立的域,用於在Laravel的同一個安裝上運行的3個姊妹站點。所以我有3個路由組,每個域有一個。此外,我不想請求域變量每次使用{domain}.com
,我想要告訴 Laravel在每種情況下的域,然後將該域作爲變量傳遞到每個組內的適當的控制器。這裏是我的示例代碼:
$domain1 = 'domain1.com';
$domain2 = 'domain2.com';
$domain3 = 'domain3.com';
Route::group(array('domain' => $domain1), function(){
Route::get('/', '[email protected]'); // <-- I want to access $domain1 in my controller
});
Route::group(array('domain' => $domain2), function(){
Route::get('/', '[email protected]'); // <-- ...and $domain2
});
Route::group(array('domain' => $domain3), function(){
Route::get('/', '[email protected]'); // <-- ...and $domain3
});
對不起,這似乎會引發一個錯誤:'引用行'Route :: get('/',函數($域){{ – Inigo
你需要在第二個版本上做同樣的工作編輯 –
非常感謝安東尼奧現在正在工作只要把它包裝起來,你知道我怎麼會把這個變量傳遞給控制器,也就是說如果我有'Route :: get('/','PrimaryController @ index');'我將如何發送域變量到這個控制器函數?謝謝。 – Inigo