2015-03-04 7 views

ответ

2

Я думаю, что вы можете сделать что-то вроде:

Route::group(['domain' => '{lang}.myapp.com'], function() 
{ 

    Route::get('/', function($lang) 
    { 
     App::setLocale($lang); 
    }); 

}); 

Или используйте App::setLocale в контроллере.

Группа позволяет использовать подстановочный знак, ar.example.comen.example.com или it.example.com все будет уловом группой. Внутри де группы вы можете определить все маршруты, необходимые и передать $lang

Может быть, вы можете добавить middleware ограничить язык, может быть, middleware, что проверить, если язык существует.

+0

В каком контроллере? Все веб-сайты должны иметь поддержку локализации. Если я использую эту группу маршрутов, должен ли я дублировать все мои маршруты для работы в 'en' и' ar'? –

+0

Нет, группа позволяет вам использовать подстановочный знак, 'ar.example.com'' en.example.com' или 'it.example.com'', который будет улавливаться группой. Внутри группы вы можете определить все необходимые вам маршруты и передать переменную $ lang в требуемом контроллере. –

+0

Тогда не было бы смысла делать «промежуточное»? –

Смежные вопросы