--
--
Has recibido este mensaje porque estás suscrito al grupo "symfony-es" de Google Groups.
Para publicar en este grupo, envía un email a symfo...@googlegroups.com
Para darte de baja, envía un email a symfony-es+...@googlegroups.com
El resto de opciones puedes encontrarlas en http://groups.google.com/group/symfony-es?hl=es
---
Has recibido este mensaje porque estás suscrito al grupo "symfony-es" de Grupos de Google.
Para cancelar la suscripción a este grupo y dejar de recibir sus mensajes, envía un correo electrónico a symfony-es+...@googlegroups.com.
Para ver esta conversación en el sitio web, visita https://groups.google.com/d/msgid/symfony-es/87d8cea1-c81b-4f54-9658-ef5ec6b24350n%40googlegroups.com.
No entiendo bien tu duda
En tu entidad Salida tienes una relación “OneToMany” a “DetalleSalida”, lo que implica que tienes muchos detalles por cada salida, por la cual tu propiedad “detallessalida” es un “ArrayCollection”.
En tu formulario necesitas un ArrayCollectionType
->add('detallessalida', CollectionType::class, [
'entry_type' => DetalleSalidaType::class,
'label' => false, // Quita le etiqueta global de la colección
'by_reference' => false, // Es necesario para que funcione bien
'allow_add' => true, // Desde el formulario puedes agregar nuevos DetalleSalida
'allow_delete' => true, // Desde el formulario puedes borrar los DetalleSalida
'prototype' => true, // Se requiere un prototipo para generar nuevos "Formularios embebidos" del tipo DetalleSalidaType en la vista
])
Y en tu controlador
/**
* @Route("/new", name="candidato_new", methods={"GET","POST"})
*/
public function new(Request $request): Response
{
$salida= new Salida();
$form = $this->createForm(SalidaType::class, $salida);
$form->handleRequest($request);
if ($form->isSubmitted() && $form->isValid()) {
$entityManager = $this->getDoctrine()->getManager();
$entityManager->persist($salida);
$entityManager->flush();
return $this->redirectToRoute('salida_show', ['id' => $salida->getId()], Response::HTTP_SEE_OTHER);
}
return $this->renderForm(salida/new.html.twig', [
salida => $salida,
'form' => $form,
]);
}
En el twig vas a tener que crear los scripts en JavaScript, necesarios para agregar los "DetalleSalida" que necesites
Te dejo un link para que puedas ampliar esta información https://symfony.com/doc/current/reference/forms/types/collection.html
Saludos