FOSUserBundle表单标签中的超链接

时间:2014-03-21 15:58:50

标签: forms symfony customization labels

所以我搜索过,谷歌搜索,询问甚至咨询了星星,但我还没能找到解决这个问题的方法。

当覆盖FOSUserBundle表单(特别是更改密码表单,但通常是任何其他FOSUserBundle表单)时,有没有办法将字段标签的一部分设置为超链接?

这个问题有意义吗?我可以详细说明它是不是。

目标

我希望结果HTML看起来像这样:

<div>
    <label for="fos_user_resetting_form_has_acceptedtos">I agree to the <a href='/tos/'>Terms Of Service</a>.</label>
    <input id="fos_user_resetting_form_has_acceptedtos" type="checkbox" value="1" name="fos_user_resetting_form[has_acceptedtos]">
</div>

我尝试了什么。 。

我已将has_acceptedtos字段添加到User.php实体并按照the instructions连接到控制器。我成功customized the field labels

不幸的是,不出所料,以下语法也不起作用:

# app/Resources/FOSUserBundle/translations/FOSUserBundle.en.yml
# ...
# Password change
change_password:
    submit: Change password
    has_acceptedtos: I agree to the <a href='/tos'>Terms Of Service</a>.
...

我甚至试图覆盖模板,试图通过css人工创建一个出现在复选框附近的标签。没有做得太好。

除了重写整个FOSUserBundle以生成我自己的表格之外,这甚至可以实现吗?

提前感谢任何建议!

1 个答案:

答案 0 :(得分:0)

您必须使用custom form themingTwig "raw" method的组合来完成此任务。

Here's an answer处理一个非常相似的问题。