Подтвердить что ты не робот

Как обращаться с переводом в файле twig с помощью переменных?

У меня есть файл twig и yml, в котором я определяю переменные для перевода, например.:

Файл YML -
variable.for.translation: Disponible, para tí

Содержимое файла Twig -

<h2>"Hola, Follow {{ variableName }} en Twitter</h2>  

Я хотел создать переменную для

Hola, Follow {{ variableName }} en Twitter

в файле перевода (например, в файле yml).
В настоящее время я делаю это вот так:
В YML -

follow.us.twitter: Hola, Follow 

follow.us.twitter1: en Twitter 

В Twig -

<h2>{{ "follow.us.twitter"|trans([], "workend") }} {{ variableName }} {{ "follow.us.twitter1"|trans([], "workend") }}</h2> 

Он работает отлично, но проблема в том, что теперь у меня есть 3 переменные в веточке, которые слишком много:

 1. follow.us.twitter
 2. follow.us.twitter1
 3. {{ variableName }}

Я попытался сделать это с помощью 1 переменной, например:

follow.us.in.twitter : Hola, Follow {{ variableName }} en Twitter 
and  
<h2>{{ "follow.us.in.twitter"|trans([], "workend") }}</h2>

но это не сработало, проблема заключается в переменной i.e {{variableName}}, которую я использую.
Есть ли способ обработать предопределенную переменную и определить ее в файле перевода?
Спасибо за ваше время.

4b9b3361

Ответ 1

Вы шли правильно, то, что вы пропустили, это просто передать переменнойName как параметр в trans() в файле Twig как:

<h2>{{ "follow.us.in.twitter"|trans({'%variableName%': variableName}, "workend") }}</h2>

Теперь ваше сообщение в файле Yml должно быть таким:

follow.us.in.twitter: Hola, Follow %variableName% en Twitter

Это должно сработать. Для получения более подробной информации и ясности вы можете обратиться к следующему: Книга Symfony

Удачи.