Как добавить значения транс к формам Symfony в ветке

Я пытаюсь преобразовать некоторую форму в моем приложении в формы Symfony. У меня есть значение дня рождения, для которого я хочу иметь пустые значения, и пустые значения должны быть соответственно «месяц», «день» и «год» и отображать переведенные версии этих слов в зависимости от вашего местонахождения. Прямо сейчас я пытаюсь это с веткой.

{{ form_row(form.birthday, {'empty_value':{ 'year':'title.year'|trans, 'month':'title.month'|trans, 'day':'title.day'|trans }}) }}

но это не сработало, так как я все еще вижу ‘jan’ ‘1’ ‘1894’ в качестве значений по умолчанию для поля.

вот как я определил это в форме:

->add(
'birthday',
'birthday',
[
'label' => false,
'required' => true,
'attr' => [
'class' => 'date-fields'
]
]
)

Есть ли способ сделать это в веточку, или я должен передать переводчик к моей форме и сгенерировать текст там?

0

Решение

Не могли бы вы попробовать код ниже:

->add(
'birthday',
'birthday',
[
'label' => false,
'required' => true,
'attr' => [
'class' => 'date-fields'
],
'empty_value' => 'your_translation_path' // for example title.year
]
)

И в методе setDefaultOptions вашей формы вы можете добавить домен перевода по умолчанию, например:

/**
* {@inheritdoc}
*/
public function setDefaultOptions(OptionsResolverInterface $resolver)
{
$resolver->setDefaults([
'translation_domain' => 'AcmeDemoBundle',
]);
}

Надеюсь, поможет.

0

Другие решения

Существует очень простой способ сделать это.
Просто создайте файл перевода с именем messages.en.xliff
в этом каталоге

YourProject
|___app
|___Resources
|___translations
|___messages.en.xliff

И в messages.en.xliff просто добавьте эту строку

        <trans-unit id="Title">
<source>Title</source>
<target>标题</target>
</trans-unit>

Проверьте это. Не забыл очистить кеш
Нет необходимости добавлять транс в форме.

0

По вопросам рекламы [email protected]