В Symfony2 я использую formbuilder. Я устанавливаю этикетки в форме, согласно документации.
Однако, когда я на страницах 'show' и 'index', мне нужно скопировать ярлыки в Twig.
Есть ли способ использовать те же метки везде? Варианты, о которых я подумал:
Однако в любом случае мне нужно «делать» что-то, к чему я не привык в Symfony. Похоже, это то, что уже было бы решено, но я не уверен, как это сделать.
Вы можете использовать систему перевода для решения этой проблемы. Убедитесь, что вы включили перевод в config.yml
.
Если вы добавили поле в свой вид формы, как это
$builder->add('title', 'text', array( 'label'=> 'model.title' )); //.....
Создайте файл с именем messages.en.yml
в своих каталогах Resources/translations
(замените en
на ваш локаль по умолчанию и создайте несколько файлов на основе локалей. Проверьте главу перевода книги).
#src/YourBundle/Resources/translation/messages.en.yml model: title: "Title" field: "Field" #....
Добавьте и отредактируйте ярлык форм, показывая Title
. В индексных и показных страницах вы можете делать
{{ "model.title" | trans([], 'messages') }}
Хотя этот процесс немного длинный, но он один раз, и вы можете изменить значение меток, изменив файлы перевода.