2014-01-20 88 views
1

我想在我的數據庫中記錄複選框的選擇。我得到這個錯誤:Symfony2複選框和Doctrine

ContextErrorException: Notice: Array to string conversion in //vendor/doctrine/dbal/lib/Doctrine/DBAL/Statement.php line 120

我的形式:

public function buildForm(FormBuilderInterface $builder, array $options) 
    { 
     $builder->add('adult_available', 'choice', array(
      'choices' => array('A' => 'Adult', 'C' => 'Children'), 
      'required' => false, 
      'expanded' => true, 
      'multiple' => true 
     )); 

我場:

/** 
    * @ORM\Column(type="string", columnDefinition="CHAR(1) NOT NULL") 
    */ 
    protected $adult_available; 

我的形式看起來很不錯!但是當我提交時,我得到了ContextErrorException異常

謝謝!

+0

該字段保存單個值,但是你已經允許的形式期待多個值。 – Flosculus

+0

你說我的領域是錯的:@ORM \ Column(type =「string」,columnDefinition =「CHAR(1)NOT NULL」)? – Anthony

+0

我不知道該字段是否應該是一個集合,或者如果該表單應該僅在提交時返回單個值。我只知道現在看起來他們互相矛盾。 – Flosculus

回答

1

試試這個:

/** 
* @var array 
* 
* @ORM\Column(name="adult_available", type="simple_array") 
*/ 
private $adultAvailable; 
+0

是的,它的作品! – Anthony

+0

@ user2775846請勾選我吧! :) – Flosculus