Tôi muốn nhúng một bộ sưu tập các biểu mẫu không phải thực thể được nạp tiền, đây là mã, đầu tiên là phương thức buildForm của biểu mẫu gốc.Làm thế nào để nhúng một bộ sưu tập nạp tiền của các hình thức phi thực thể trong symfony2
public function buildForm(FormBuilderInterface $builder, array $options) {
$builder->add("example1")->add("example2");
$builder->addEventListener(FormEvents::PRE_SET_DATA, function (FormEvent $event) {
/*some logic to do before adding the collection of forms*/
$form->add('aclAccess', 'collection', array(
'type' => new ChildFormType(),
'allow_add' => true,
'mapped' => false,
'data' => /* I dont know how to precharge a collection of non-entity forms*/
));
});
}
nay là hình thức con
public function buildForm (FormBuilderInterface $builder, array $options) {
$builder->add("test1", "text", array("read_only" => true, "data" => "test"));
$builder->->add("test2", "choice", array(
'choices' => array('opt1' => 'Opt1', 'opt2' => 'Opt2'),
'multiple' => true,
'expanded' => true
));
}
nên về cơ bản tôi muốn quản lý các lựa chọn con trong lĩnh vực test2 như các hình thức tách ra, mỗi nhóm lựa chọn sẽ phụ thuộc vào giá trị của trường test1, tôi biết điều này có thể được thực hiện bằng cách mã hóa everythin trong cành mà không có các lớp biểu mẫu nhưng tôi nghĩ rằng có các lớp biểu mẫu thực hành tốt nhất để chạy thử nghiệm phpunit, để bảo trì, v.v ...