Estoy usando jQuery
para editar mi formulario que está integrado Symfony
.
Estoy mostrando el formulario en el jQuery
cuadro de diálogo y luego lo envío.
Los datos se ingresan correctamente en la base de datos.
Pero no sé si necesito enviar algunos de JSON
vuelta jQuery
. En realidad, estoy un poco confundido JSON
.
Supongamos que agregué una fila en mi tabla con `` jQuery y cuando envío el formulario, luego de enviar los datos, quiero enviar esos datos de la fila para poder agregar dinámicamente la fila de la tabla para mostrar los datos agregados.
Estoy confundido de cómo puedo recuperar esos datos.
Este es mi código actual:
$editForm = $this->createForm(new StepsType(), $entity);
$request = $this->getRequest();
$editForm->bindRequest($request);
if ($editForm->isValid()) {
$em->persist($entity);
$em->flush();
return $this->render('::success.html.twig');
}
Esta es solo la plantilla con mensaje de éxito.
fuente
Symfony 2.1 tiene una clase JsonResponse .
La matriz pasada estará codificada en JSON, el código de estado predeterminado será 200 y el tipo de contenido se establecerá en application / json.
También hay una
setCallback
función útil para JSONP.fuente
Desde Symfony 3.1 puedes usar JSON Helper http://symfony.com/doc/current/book/controller.html#json-helper
fuente
Para completar la respuesta de @thecatontheflat, recomendaría también envolver su acción dentro de un
try … catch
bloque. Esto evitará que su punto final JSON se rompa en las excepciones. Aquí está el esqueleto que uso:De esta manera, su punto final se comportará de manera uniforme incluso en caso de errores y podrá tratarlos directamente en el lado del cliente.
fuente
Si sus datos ya están serializados:
a) envía una respuesta JSON
b) enviar una respuesta JSONP (con devolución de llamada)
Si sus datos deben serializarse:
c) enviar una respuesta JSON
d) enviar una respuesta JSONP (con devolución de llamada)
e) usar grupos en Symfony 3.xx
Crea grupos dentro de tus Entidades
Normaliza tu Objeto Doctrine dentro de la lógica de tu aplicación
fuente