Symfony требования к нескольким маршрутам от констант - PullRequest
1 голос
/ 12 июня 2019

Я работаю над проектом Symfony 3.4, и мне нужно добавить требование к моему маршруту, например:

/**
 * @Route("/{_locale}", defaults={"_locale"="en"}, requirements={
 *     "_locale"="en|fr"
 * })
 */
public function homepageAction($_locale)
{
    // ...
}

Вы видите "_locale"="en|fr", моя проблема в том, что мне нужно получить en и fr из константного класса, не входящего непосредственно в аннотацию.

Так что-то вроде "_locale"="MY_FIRST_CONSTANTE|MY_SECOND_CONSTANTE"

Я борюсь с синтаксисом.

Спасибо!

1 Ответ

2 голосов
/ 12 июня 2019

В вашем классе, где хранятся ваши константы:

const EN = 'en'
const FR = 'fr'

const REQUIREMENTS = self::EN.'|'.self::FR;

Затем в вашем контроллере

/**
 * @Route("/{_locale}", defaults={"_locale"=App\Locales::EN}, requirements={
 *     "_locale"=App\Locales::REQUIREMENTS
 * })
 */
public function homepageAction($_locale)
{
    // ...
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...