Форма Symfony - choiceType из атрибутов класса
У меня есть класс Options с множеством атрибутов, вложенный в класс B
class Options {
private $foo;
private $bar;
// getter setters ..
}
class B {
private $baz;
private $options; // Option class
}
Есть ли способ сделать ChoiceType с флажками из атрибутов B.options?
$options = new Options();
$b = new B();
$b->setOptions($options);
$form = $this->createForm(MyType::class, $b, []);
// ...
$builder->add('options', ??,[
// ??
];
Каковы лучшие практики для таких случаев.
2 ответа
Вы хотите встроить коллекцию форм. Symfony очень хорошо связывает сущности в формах. Проверьте ссылку на документацию.
Просто используйте ChoiceType
, Если expanded
а также multiple
варианты установлены в true
, флажки будут оказаны.
$builder->add('options', ChoiceType::class, [
'expanded' => true,
'multiple' => true,
]);
http://symfony.com/doc/current/reference/forms/types/choice.html