Foros del Web » Programando para Internet » PHP » Symfony »

Formulario sin formType u otra forma para solucionarlo

Estas en el tema de Formulario sin formType u otra forma para solucionarlo en el foro de Symfony en Foros del Web. Hola, tengo un problema de formularios con Symfony 3, quizás sea muy básica, pero estoy empezando y la verdad es que estoy atascado Por un ...
  #1 (permalink)  
Antiguo 28/12/2017, 14:05
 
Fecha de Ingreso: mayo-2003
Mensajes: 14
Antigüedad: 20 años, 11 meses
Puntos: 1
Pregunta Formulario sin formType u otra forma para solucionarlo

Hola, tengo un problema de formularios con Symfony 3, quizás sea muy básica, pero estoy empezando y la verdad es que estoy atascado
Por un lado tengo en la bbdd dos tablas , una con usuarios y otra tabla de imágenes con una relación uno a muchos.
El proceso es el siguiente, un usuario se inscribe en un formulario, este formulario guarda los datos de inscripccion y envía un correo al usuario para que valide su cuenta en el que va un token que lleva información encriptada, entre otras cosas del id del usuario.
Una vez que valida su correo (hasta aquí todo correcto sin problemas) accede a un formulario para poder subir multiples fotos.
El problema esta en este formulario ya que , por un lado cuando hago el sumit quiero mandar mediante un campo hidden la información del token para en mi controler desencriptarlo y sacar el ID, pero al no generar ese campo mediante el formtype no consigo acceder a la información de ese valor. Haciendo un dump de todos los datos que llegan al hacer el sumit (el campo se llama “val”)

Parte del Dump,


-requestHandler: HttpFoundationRequestHandler {#1000 ▼
-serverParams: ServerParams {#996 ▼
-requestStack: RequestStack {#48 ▼
-requests: array:1 [▼
0 => Request {#86 ▼
+attributes: ParameterBag {#70 ▶}
+request: ParameterBag {#69 ▼
#parameters: array:3 [▼
"backendbundle_inscritosimages" => array:2 [▼
"images" => array:1 [▼
0 => ""
]
"inscritos" => "63"
]
"val" => "DKp2dd6Zdij91ad_9Amz7JFy4rAHiGhtIMbLxmYNWrM12oFmv 4KsdTEt0CUztF5AC8hs"
"form" => array:1 [▶]
]
}

pero soy incapaz de sacarlo ya que si hago un
$datoVal = $form->get("val")->getData();

Me dice que
Child "val" does not exist.

Tengo el mismo problema con los campos de imagen ya que el formulario permite subir varias imágenes que pensaba luego en el controler recorrer con un loop para ir insertando en la bbdd. Los campos file para cargar las imágenes se generan dinámicamente con ajax por lo que no puedo generarlos tampoco en el formtype (no quiero usar en el imput file el multiple).
No sé si estaré haciéndolo bien, o hay algún tipo de método
  #2 (permalink)  
Antiguo 29/12/2017, 18:57
Avatar de hhs
hhs
Colaborador
 
Fecha de Ingreso: junio-2013
Ubicación: México
Mensajes: 2.995
Antigüedad: 10 años, 9 meses
Puntos: 379
Respuesta: Formulario sin formType u otra forma para solucionarlo

Todos los campos cuentan con una propiedad mapped que por defecto esta a true para indicar que sera mapeada en la base de datos. Solo la tienes que poner en false.
Código PHP:
Ver original
  1. $form->add('roles_options', ChoiceType::class, array(
  2.         "mapped" => false,
  3.         "multiple" => true,
  4.         "attr" => array(
  5.             'class' => "form-control"
  6.         ),
  7.         'choices'  => array(
  8.             'Blogger' => 'ROLE_BLOGGER',
  9.             'Administrator' => 'ROLE_ADMIN'
  10.         )
  11.     ));
__________________
Saludos
About me
Laraveles
A class should have only one reason to change.

Etiquetas: Ninguno
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 17:46.