2014-02-17 48 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。

聽起來很像您遇到的問題。