Я хочу определить язык страницы через url на установке Symfony2. Моя маршрутизация работает через аннотацию внутри контроллера.Язык в маршрутизации, язык по умолчанию также без параметра
routing.yml
_index:
resource: "@MyMainBundle/Controller/SiteController.php"
type: annotation
SiteController.php
/**
* @Route("/{_locale}/{site}", name="_site_site", defaults={"_locale" = "en"}, requirements={"site" = "about|cities|download|blog", "_locale" = "en|de|fr|es"})
*/
Это работает тихо хорошо, но WAHT я хочу, что следующий URL называют те же действия.
http://example.com/download
http://example.com/en/download
http://example.com/de/download
Без languge-параметра, страница должна переключиться обратно на язык по умолчанию, но это то, что я могу справиться в моей деятельности.
Я нашел этот ответ, но не смог заставить его работать вообще. Symfony2 default locale in routing
Спасибо! Мне просто нужно было добавить 'defaults = {"_ locale" = "en"}', в противном случае это приведет к ошибке, если в URL-адресе не обнаружено языкового стандарта. – madc
вы можете добавить locale в routing.yml после типа = "аннотации": _locale: en | fr –