2014-02-17 182 views
1

我想填充选择列表,与实体的数据。 选项正确创建,选项值正确。Symfony2填充选择列表选项与数据从数据库

然而,每次我提交它始终把debtorGroup的原始值的形式,并且忽略来自形式

后数据的一个例子所选择的值: (选定debtorGroup为3,而不是2这是原始值)

object(App\Bundle\CoreBundle\Entity\Customer)[449] 
protected 'id' => int 9 
private 'debtorGroup' => int 2 
private 'fullName' => string 'Daniel Mensing' (length=20) 

我FormBuilder代码:

我的客户单位:

class Customer extends User 
{ 
/** 
* @ORM\Id 
* @ORM\Column(type="integer") 
* @ORM\GeneratedValue(strategy="AUTO") 
*/ 
protected $id; 

/** 
* @var integer 
* 
* @ORM\Column(name="debtor_group", type="integer") 
*/ 
private $debtorGroup; 

/** 
* @var string 
* 
* @ORM\Column(name="full_name", type="string", length=255) 
*/ 
private $fullName; 

/** 
* @var string 
* 
* @ORM\Column(name="company_name", type="string", length=255) 
*/ 
private $companyName = null; 

而且我DebtorGroup实体:

class DebtorGroup 
{ 
/** 
* @ORM\Id 
* @ORM\Column(type="integer") 
* @ORM\GeneratedValue(strategy="AUTO") 
*/ 
private $id; 

/** 
* @var string 
* 
* @ORM\Column(name="name", type="string", length=100) 
*/ 
private $name; 
} 

任何人有一个线索,什么是错?

由于提前,

/丹尼尔

+0

我得到它的工作是这样 '加( 'debtorGroup', '选择',阵列( '选择'=> $这个 - > getDoctrine() - > getRepository( 'AppCoreBundle:DebtorGroup') - > findAll() ))' 但是,有没有更聪明/更好的方法来做到这一点? –

回答

0

你必须mapped设置为false在实体领域的声明。这是个什么文件说,有关mapped选项:

如果你想现场读取或写入 对象时被忽略,你可以映射选项设置为false。

听起来很像您遇到的问题。