2011-09-21 127 views
0

我在保存选择小部件的数据时遇到了问题。 这里是架构的一部分:Symfony:如何从多个复选框中保存sfWidgetFormDoctrineChoice的数据

Client: 
    columns: 
    id: 
     type: integer 
     primary: true 
     autoincrement: true 
    grupy: 
     type: array 
    options: 
    collate: utf8_unicode_ci 
    charset: utf8 
    relations: 
    Grupy: 
     type: many 
     local: grupy 
     foreign: id 
     class: KlientGrupy 

KlientGrupy: 
    options: 
    collate: utf8_unicode_ci 
    charset: utf8 
    columns: 
    id: 
     type: integer 
     primary: true 
     autoincrement: true 
    item: 
     type: string(255) 
    relations: 
    Klienci: 
     type: many 
     local: id 
     foreign: grupy 

ClientForm类:

class ClientForm extends BaseClientForm 
{ 

    public function configure() 
    { 
     $this->widgetSchema['grupy']->setOption('multiple', true); 
     $this->widgetSchema['grupy']->setOption('expanded', true); 
     $this->widgetSchema['grupy']->setOption('add_empty', false); 
     $this->widgetSchema['grupy']->setAttribute('class', 'checkBoxLabel'); 

    } 

} 

BaseClientForm类:

$this->setWidgets(array(
    'id'    => new sfWidgetFormInputHidden(), 
    'grupy'   => new sfWidgetFormDoctrineChoice(array('model' => $this->getRelatedModelName('Grupy'), 'add_empty' => true)), 
)); 

当我与一个复选框保存那么一切都OK,但是当我尝试做它不止一个我得到这个问题:

SQLSTATE[HY093]: Invalid parameter number: number of bound variables does not match number of tokens 
+0

好吧,我发现这里sollution: http://www.doctrine-project.org/projects/orm/1.2/docs/manual/defining-models/en#relationships :join-table-associations:多对多 如果你有问题写在这里,我会尽力帮助你 – WooCaSh

回答

0

你可以找到答案的评论我的问题

相关问题