Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

250
Vistas
Recorriendo el resultado de JSONResponse() de django en jquery

Estoy interesado en obtener los resultados de una operación de inserción de views.py en forma de JSON. Estoy obteniendo los resultados bien, creo. mi vista se ve así:

 added={} if request.method=='POST': #Post method initiated. try: for id in allergies: allergy=PatientAllergy(patient=patient,allergy_id=id,addedby=request.user) allergy.save() added[allergy.id]=id except BaseException as e: pass return JsonResponse(added,safe=False)

Los registros, pasados desde JQUERY, se agregaron con éxito a la base de datos. Lo que quiero obtener ahora es un resultado JSON en forma de {12:1, 13:2}.

Mi firebag muestra la respuesta como:

 12:1 13:2

No estoy seguro de si este es un JSON válido o no. Si hago una lista (agregado), da en su lugar:

 0: 12 1: 13

que no quiero. El problema que tengo ahora es que quiero revisar los artículos devueltos, pero obtengo resultados incorrectos. Básicamente quiero obtener 12:1, 13:2.

 $.ajax({ type: "POST", url: "/patient/addallergy/", data: postForm, dataType : "json", cache: "false", success: function (result) { alert(result.length); //gives undefined, rendering the below line meaningless if (result.length>0){ $.each(result,function(key,value){ alert(key); alert(value); }); } }, fail: function (result){ } });
over 4 years ago · Santiago Trujillo
1 Respuestas
Responde la pregunta

0

cambia tus puntos de vista así.

 added_list=[] if request.method=='POST': #Post method initiated. try: for id in allergies: added ={} allergy=PatientAllergy(patient=patient,allergy_id=id,addedby=request.user) allergy.save() added[allergy.id]=id added_list.append(added) except BaseException as e: pass return JsonResponse(added_list,safe=False)

y en jquery

 $.ajax({ type: "POST", url: "/patient/addallergy/", data: postForm, dataType : "json", cache: "false", success: function (result) { alert(result.length); //gives undefined, rendering the below line meaningless if (result.length>0){ alert(JSON.stringify(result)) $.each(result,function(index,value){ console.log(value); }); result.forEach( function (eachObj){ for (var key in eachObj) { alert(key); alert(eachObj[key]) } }); } }, fail: function (result){ } });
over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda