Symfony: как сохранить данные из sfWidgetFormDoctrineChoice с несколькими флажками - PullRequest
0 голосов
/ 21 сентября 2011

У меня проблема с сохранением данных из виджета выбора. Вот часть схемы:

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)),
));

Когда я сохраняю с одним флажком, тогда все в порядке, но когда я пытаюсь сделать это для более чем одного, я получаю эту проблему:

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

1 Ответ

0 голосов
/ 20 апреля 2012

Вы можете найти ответ в комментарии на мой вопрос

...