我有一个表单类型,它有一个不在实体中作为属性的字段,但该实体有一个与表单字段同名的 getter 和一个 setter,解释:
表格类型:
$builder->add('theField', 'entity', array(
'label' => 'The field',
'class' => 'MyAppBundle:AnEntity',
'empty_value' => '',
));
实体:
class User
{
//There is NOT a property called "theField"
public function setTheField($value)
{
...
}
public function getTheField()
{
...
}
}
所以,我希望 Symfony2 调用 getter 和 setter 来绑定并显示表单字段,但我收到了这个错误:
Property theField does not exists in class My\AppBundle\Entity\User
有没有在实体中声明属性的情况下创建此表单字段的方法?
编辑
很奇怪,但是当我声明一个私有财产theField
时,它就起作用了(顺便说一句,这不是我要找的)。