У меня есть форма ZF2 с элементом коллекции форм. Название элемента коллекции — «Роли». Если я сделаю:
$form->setData(array('roles' => array('admin', 'moderator')));
И тогда я делаю:
$form->setData(array('roles' => array())); // it does not work
Тогда, если мы сделаем:
$form->get('roles')->getCount(); // 2
Там будет еще 2 элемента. Мне нужно очистить элементы из этой коллекции.
Это очень важно для меня, потому что я использую доктрину 2. Поэтому я должен связать непустую сущность, прежде чем задавать данные в форму. Например:
$form->bind($entity); // $entity->roles is not empty
$form->setData($someData); // $someData['roles'] is empty array
if ($form->isValid()) {
$form->get('roles')->getCount(); // 2(!) it is not empty!
saveToDb($entity);
}
return $form;
Задача ещё не решена.
Других решений пока нет …