如何修改Symfony2生成的表单元素的id?

Jos*_*eph 1 symfony

我在 Symfony 中有一个带有选项卡的应用程序,并使用 Ajax 异步加载,这样我就可以在应用程序中一次使用两个表单。我有一个用于注册用户的表格和另一个用于更新用户数据的表格。在更新表单中,Symfony2通过生成表单来创建用户(UserType),因此表单元素的id是相同的。

另一方面,我有一个验证表单元素的函数,但是当它验证其中一个表单时,也会验证另一个表单是否具有相同的 id 元素,因此没有正确验证每个表单。

例如,使用 Twig {{form_row (edit_form.name)}}生成一个输入id = "user_name",我需要将其修改为更新形式 as id = "update_user_name"

那有什么办法可以改变id属性吗?

cha*_*asr 5

你可以这样做:

\n
{{ form_row(edit_form.name, { \'id\': \'edit_user_name\'\xc2\xa0}) }} \n
Run Code Online (Sandbox Code Playgroud)\n

如果你想获取原始 id 并为其添加前缀,你可以尝试以下操作:

\n
{{ form_row(edit_form.name, { \'id\': \'update_\' ~ edit_form.name.vars.id\xc2\xa0}) }}\n
Run Code Online (Sandbox Code Playgroud)\n

希望这适合您的需要。

\n