Как я могу автоматически добавить _locale к URL в аннотациях - PullRequest
0 голосов
/ 15 ноября 2018

Привет, я получил свой маршрут к «переднему» контроллеру,

/**
 * @Route("/{_locale}/{furl}", defaults={"_locale"="pl","furl"=" "}, name="front", requirements={"_locale"="pl|de|en"})
 * @Route("/{furl}", defaults={"_locale"="pl"})
 */

И теперь это проблема, потому что когда мы ее получили, то есть url / pl / test, она работает как / test aswell, но как сделать некоторую перезапись, если кто-то напишет / протестирует, это будет / pl / test в качестве локали по умолчанию потому что для seo важно получить одну указанную ссылку. Круто, что работает и то, и другое, но как автоматически переписать / проверить в / pl / test, это возможно в аннотации?

1 Ответ

0 голосов
/ 16 ноября 2018

Почему бы не попробовать перенаправить ваш корневой URL '/' на '/pl' и включить только '/pl/test'?Вот способ сделать это в config/routes/annotations.yaml

controllers:
    resource: ../../src/Controller/
    type: annotation
    prefix: 
      pl: '/pl'
      de: '/de'
      en: '/en'

root:
    path: '/'
    defaults:
        _controller: FrameworkBundle:Redirect:urlRedirect
        path: '/pl'
        permanent: true

Подробнее в Документация Symfony

...