也许我没有想到明显的方法,但是我该如何(或者是否可以)向一个绑定到实体的Symfony表单中添加一个额外的“未绑定”字段呢?
假设我有一个带有first_name
和last_name
字段的实体。我在我的表单类的buildForm
方法中按照典型方式操作。
$builder
->add('first_name')
->add('last_name')
;
并且这是我的控制器中的代码:
$editForm = $this->createForm(new MyType(), $entity);
这个方法很好用,但是我想添加另一个文本框,叫做“extra”,并在POST操作中接收它的值。如果我这样做$builder->add('extra')
,它会抱怨:
在PropertyAccessor.php文件的第479行上发生了NoSuchPropertyException异常:
类中没有公共访问符号的“extra”属性、getExtra() 方法、extra() 方法、isExtra() 方法、hasExtra()方法和__get()方法之一...
这是正确的。我只想使用它来从用户那里收集一些额外的信息,并对其进行一些与实体存储不同的处理。
我知道如何创建完全独立的表单,但不知道如何创建“混合”的表单。这可行吗?