У меня есть форма, содержащую объект с коллекцией:Symfony2 форма не сохраняется пустой коллекция
public function buildForm(FormBuilderInterface $builder, array $options)
{
$builder
->add('name', 'text')
->add('fichiers', 'collection', array(
'type' => new FichierType(),
'allow_add' => true,
'allow_delete' => true,
'by_reference' => false
))
;
}
Но эта коллекция содержит 4 нон обязательного поля:
public function buildForm(FormBuilderInterface $builder, array $options)
{
$builder
->add('url', 'text', array(
'required' => false
))
->add('name', 'text', array(
'required' => false
))
->add('size', 'text', array(
'required' => false
))
->add('type', 'text', array(
'required' => false
))
;
}
Но если я Сверяю form, я не хочу вставлять коллекцию, потому что все поля имеют значение null:
Исключение произошло при выполнении 'INSERT INTO fichier (url, name, size, type, groupe_id) VALUES (,,)»с Params [NULL, NULL, NULL, NULL, 2]:???
Я думаю, это связано с тем, что ваше сопоставление объектов не принимает нулевые значения. Можете ли вы показать нам свое отображение объектов? – Freelancer
Вы также можете добавить 'contraint => Valid()' в тип коллекции родительской формы, чтобы проверка была принудительной для ребенка. http://symfony.com/doc/current/reference/constraints/Valid.html – Rvanlaak
У вас есть решение этой проблемы? –