Пожалуйста, не могли бы вы объяснить, как получить объект в дочерней форме способом CollectionType (встроенная форма)?
Это родительская форма:
class ClienteRespuestasType extends AbstractType
{
public function buildForm(FormBuilderInterface $builder, array $options)
{
dump ($options['data']);
$builder
->add('respuestas', CollectionType::class, array(
// each entry in the array will be an "email" field
'entry_type' => RespuestaType::class,
// these options are passed to each "email" type
'entry_options' => array(
'attr' => array('class' => 'email-box'),
)
))
->add('Guardar', SubmitType::class, array(
'attr' => array('class' => 'btn btn-default'),
));
}
public function configureOptions(OptionsResolver $resolver)
{
$resolver->setDefaults([
'data_class' => Cliente::class,
]);
}
}
Дочерняя форма приведена ниже. $options['data']
равно нулю.
public function buildForm(FormBuilderInterface $builder, array $options)
{
dump ($options['data']);
$builder
->add('contestacion', null, array(
'label' => 'HOW TO GET ATTRIBUTE OF THIS CHILD FORM'
))
;
}
А отношение между классами Cliente и Respuesta:
/**
* @ORM\OneToMany(targetEntity="App\Entity\Respuesta", mappedBy="cliente", orphanRemoval=true)
*/
private $respuestas;
Спасибо!