我有一个包含此字段的表单类型:
->add('action', 'text', array(
'required' => false,
))
表单类型映射到具有属性action
的实体。
问题是,当我在twig中渲染此表单时,该字段预先填充了表单的HTTP操作URL,这显然不是我想要的。
我是否必须重命名表单字段和实体属性以避免此冲突?
答案 0 :(得分:3)
我错误地在控制器中初始化表单。我这样做了:
$filterForm = $this->createForm(new ActionLogFilterType(), array(
'action' => $this->generateUrl('admin.action_logs.index'),
'method' => 'GET',
));
当我需要这样做时:
$filterForm = $this->createForm(new ActionLogFilterType(), null, array(
'action' => $this->generateUrl('admin.action_logs.index'),
'method' => 'GET',
));
事实证明,我确实可以使用action
作为我希望的表单字段。
答案 1 :(得分:0)
在Symfony 2.3中添加了变量方法和操作,请参阅http://symfony.com/doc/current/reference/forms/twig_reference.html。所以,是的,你必须重命名它。