我需要在我的网址中添加语言代码,但不是默认语言代码。
以下是routes.php
Laravel 4.2
文件中的代码
我需要根结构,如:
默认语言=> http://website.com/RegistrationStep1
其他语言=> http://website.com/language/RegistrationStep1
Route::group(['prefix' => '{lang?}', 'before' => 'localization'], function()
{
Route::get('/', function() {
return View::make('hello');
});
Route::get('registration/step1', 'RegistrationController@getRegistrationStep1');
Route::post('registration/step1', 'RegistrationController@postRegistrationStep1');
});
我在url中没有语言参数的情况下调用url时收到错误
答案 0 :(得分:4)
首先,定义您的可用语言:
# in app/config/app.php
'available_locales' => array('de', 'en', 'es', 'fr', 'it'),
在routes.php
检查当前URI的第一段是否是有效的语言快捷方式,然后在路由组中注册前缀。
$locale = Request::segment(1);
if (in_array($locale, Config::get('app.available_locales'))) {
\App::setLocale($locale);
} else {
$locale = null;
}
Route::group(array('prefix' => $locale), function()
{
//your routes here
});
请参阅链接http://learninglaravel.net/language-switching-in-laravel-4/link
您也可以将此套餐用于您的任务:mcamara/laravel-localization