我正试图用实体中的数据填充一个选择列表。选项创建正确,并且选项的值正确。
然而,每次我提交表单时,它总是放debtorGroup的原始值,并忽略表单中的选定值
张贴数据示例:(选择的debtorGroup是3,而不是2,这是原始值)
object(AppBundleCoreBundleEntityCustomer)[449]
protected 'id' => int 9
private 'debtorGroup' => int 2
private 'fullName' => string 'Daniel Mensing' (length=20)
我的FormBuilder代码:
$form = $this->createFormBuilder($customer)
->add('debtorGroup', 'entity', array(
'mapped' => false,
'class' => 'AppCoreBundle:DebtorGroup',
'required' => true,
))
->add('fullName')
->add('companyName')
->add('address1')
->add('address2', 'text', array(
'required' => false,
))
->add('zipPostal')
->add('city')
->add('phone')
->add('email')
->getForm();
我的客户实体:
class Customer extends User
{
/**
* @ORMId
* @ORMColumn(type="integer")
* @ORMGeneratedValue(strategy="AUTO")
*/
protected $id;
/**
* @var integer
*
* @ORMColumn(name="debtor_group", type="integer")
*/
private $debtorGroup;
/**
* @var string
*
* @ORMColumn(name="full_name", type="string", length=255)
*/
private $fullName;
/**
* @var string
*
* @ORMColumn(name="company_name", type="string", length=255)
*/
private $companyName = null;
我的债务人集团实体:
class DebtorGroup
{
/**
* @ORMId
* @ORMColumn(type="integer")
* @ORMGeneratedValue(strategy="AUTO")
*/
private $id;
/**
* @var string
*
* @ORMColumn(name="name", type="string", length=100)
*/
private $name;
}
有人知道怎么了吗?
提前感谢
/Daniel
在实体字段声明中将mapped
设置为false。这就是文档中关于mapped
选项的说明:
如果您希望在读取或写入对象,则可以将mapped选项设置为false。
听起来很像你遇到的问题。