如何更改symfony 2表单模板中出现的标签

时间:2012-01-12 06:18:53

标签: php symfony

我在模板中有这个

<form action="{{ path('fos_user_registration_register') }}" {{ form_enctype(form) }} method="POST" class="fos_user_registration_register">
{{ form_widget(form) }}

表单显示为

fos_user_registration_form_username  --input box
fos_user_registration_form_email
fos_user_registration_form_plainPassword_first
fos_user_registration_form_plainPassword_second

但它想要有简单的标签,如用户名,电子邮件等。如何做到这一点

2 个答案:

答案 0 :(得分:1)

您可以解析单个表单字段而不是整个表单。

{{ form_widget(form.fos_user_registration_form_username) }}

通过这种方式,您可以解析单个表单元素。确保以

结尾
{{ form_rest(form) }} 

输出任何尚未解析的字段(例如csrf保护令牌)。

使用上述方法,您可以将自己的标签添加到字段中。

答案 1 :(得分:0)

FOSUserBundle使用翻译系统。你需要在这里的文档中看到:

https://github.com/FriendsOfSymfony/FOSUserBundle/blob/1.2.0/Resources/doc/index.md

添加:

# app/config/config.yml
framework:
    translator: ~

到您的配置文件(app/config/config.yml)。

这将告诉symfony将所有标签值替换为翻译器文件(FOSUserBundle.en.yml)中的值。然后表单将始终打印&#34;用户名&#34;而不是&#34; fos_user_registration_form_username&#34;。