如何在Ttwig中为表单自动写入输入标签?

时间:2017-07-28 19:31:23

标签: php symfony twig

我在Twig中使用几乎标准的CRUD表单渲染:

{{ form_start(form, {'attr' : {'class' : 'new_edit_form'}}) }}
{{ form_widget(form) }}
<input type="submit" value="{{ 'default.new.create'|trans }}"/>
{{ form_end(form) }}

在这种情况下,所有输入都有大写属性名称的标签:

Title 
Description
Date

我在我的项目中启用了翻译,Twig尝试翻译这些单词,但在我的词典中,所有属性都有 field.property_name 等ID。 因此,我希望浏览所有表单输入并重写所有标签,使其成为小写并添加&#39;字段。&#39; 前缀。我怎么能在循环中做到这一点?

Symfony 3.4

2 个答案:

答案 0 :(得分:0)

要覆盖翻译,您需要将messages.en.yml添加到app/YourBundle/Resources/translations并覆盖您想要的消息: field.property_name: Your label here

这有助于:How to translate labels in symfony2 forms with messages.en.yml?

答案 1 :(得分:0)

您可以为每个字段定义特定标签:

$builder->add('save', TextType::class, array(
    'label' => 'field.sth'
))