使用routes.php
它很容易地創建使用前綴不同語言的路徑,例如,我們可以創建一個關於頁面的路線about
,並使用pl/o-nas
網址相同的路線:路線 - 通過自定義變量和翻譯
if (\Request::segment(1) =='pl') {
$prefix ='pl';
\App::setLocale('pl');
}
else{
$prefix ='';
\App::setLocale('en');
}
Route::group(
array('prefix' => $prefix,
function() {
Route::any('/'.trans('routes.about'), '[email protected]');
}
);
但是,正如我們所知,默認情況下Laravel 5使用註釋。使用註釋可以達到相同的效果嗎?目前有大約在Laravel使用註釋沒有多少信息5.
您可以先添加到RouteServiceProver
到before
方法類似代碼:
if (\Request::segment(1) =='en') {
$routePrefix ='';
$this->app->setLocale('en');
}
else{
$routePrefix ='pl';
$this->app->setLocale('pl');
}
但我們如何使用這個前綴和翻譯註解本身以及如何在這裏使用trans函數?它應該是這樣的,但它顯然不會工作,因爲你不能簡單地把函數放入註釋中,我不知道是否有任何方法在這裏添加前綴。
/**
* @Get("/trans('routes.about')")
* @prefix: {$prefix}
*/
public function about()
{
return "about page";
}
您是否可以使用中間件解析任何語言需求的路由 - 並在中間件中將其設置到控制器之前? – Laurence 2014-10-20 09:57:15
@TheShiftExchange也許我可以但在這一刻我不知道該怎麼做 – 2014-10-20 10:00:34