Estoy tratando de crear un objeto de tipo, por ejemplo, Slot relacionada con un objeto de otro tipo, Customer . Así es como se ve el cuerpo de la solicitud posterior.
{ "name: "foo "customer": {id: 21} }así es como obtengo los datos y construyo el formulario:
$data = json_decode($request->getContent(), true); $entity = new Slot(); $entityManager = $this->getDoctrine()->getManager(); $form = $this->createForm(SlotType::class, $entity); $form->submit($data, true);cero
public function buildForm(FormBuilderInterface $builder, array $options) { $builder ->add('customer', EntityType::class, [ "class" => Customer::class ]); El formulario que uso para enviar estos datos usa un tipo de formulario EntityType , pero parece que no puede reconocer los datos publicados para el campo del customer y me dice que el valor no es válido para este campo. ¿Necesito preprocesar los datos en el controlador para completar mi entidad con entidades asociadas? ¿O hay alguna manera de adjuntar dataTransformers al SlotType para completar el formulario con datos válidos ?
Puede usar un DTO con propiedades (slotTypeName y customerId), el formulario será más fácil y después de la validación, use este DTO para construir sus entidades