2016-08-30 3 views
1

У нас есть многоязычный сайт (ua, ru, en). И язык сайта автоматически вставляет URL-адрес перед вызовом контроллера/действия.Как установить правило urlmanager на многоязычном веб-сайте в yii2?

Например, если язык 'иа', чем запрос на сайт/индекс будет

ourwebsite.com/ua/controller/action 

не

ourwebsite.com/controller/action 

i18n модуль стандартный модуль yii2 i18n.

Я хочу установить в urlManager, что если язык «ua», вы можете скачать файл. Но если язык является 'ru' или 'en', и вы нажмете

ourwebsite.com/ru/download 
or 
ourwebsite.com/en/download 

, после чего вы не можете скачать файл.

Я пробовал:

'<language:(ua)>/download' => 'site/download' 

Но это не работает.

если установить

'ua/download' => 'site/download' 

он будет работать на

ourwebsite.com/ua/ua/download 
ourwebsite.com/ru/ua/download 
ourwebsite.com/en/ua/download 

ответ

0

Этот тип ссылок с настройками

enablePrettyUrl = true; 
showScriptName = false; 
+0

Эти настройки уже были такими. Я хочу скачать файл, только если язык «ua». –

+0

бэкенд \ Config \ main.php 'i18n' => [ 'перевод' => [ 'приложение *' => [ 'класс' => 'Yii \ i18n \ PhpMessageSource', ' BasePath' => '@ common/messages', 'sourceLanguage' => 'en-US', 'fileMap' => [ 'app' => 'app.php', 'app/error' => 'error.php ', ], ], ], ], ], ' language '=>' fr ',' –

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