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

138
Vistas
No puedo responder a la llamada AJAX en el procesador de contexto

Estoy desarrollando un sitio web en DJANGO y tengo un problema:

Tengo un botón en mi sitio web que, cuando se activa, envía una solicitud AJAX POST. Dado que este botón se encuentra en varios lugares de mi sitio web, decidí recibir la solicitud AJAX en el archivo del procesador de contexto de mi servidor.

Así es como se ve la solicitud en la interfaz:

 $.ajax({ method: 'POST', headers: {'X-CSRFToken': csrftoken}, data: { "requested_item": requested_item }, dataType: "json", success: function() { // Handle success } });

Y así es como se ve el manejo de solicitudes en el backend:

 requested_item = request.POST.get('requested_item') if requested_item != None: # Handle valid request return JsonResponse({'success': True})

La cuestión es que el return JsonResponse({'success': True}) no funciona, arroja este error:

 File "*path*\virtual-env\lib\site-packages\django\template\context.py", line 244, in bind_template updates.update(processor(self.request)) ValueError: dictionary update sequence element #0 has length 17; 2 is required

Los datos llegan sin problemas desde el frontend hasta el backend, pero parece que no puedo responder.

Estoy manejando varias solicitudes AJAX de la misma manera en mi backend y respondiendo sin problemas, pero esta es la única que manejo en el procesador de contexto, así que estoy seguro de que hay algo que me estoy perdiendo.

¡Gracias!

about 4 years ago · Juan Pablo Isaza
1 Respuestas
Responde la pregunta

0

Eventualmente, con ayuda, lo descubrí.

El procesador de contexto solo debe usarse para el contexto de la plantilla o la representación de la plantilla en general, por lo tanto, la respuesta debe ser un diccionario, no uno de tipo json (de eso se trata el error).

Creé una vista independiente para esta solicitud de AJAX y especifiqué en la interfaz de AJAX la URL de esta vista y así funcionó.

about 4 years ago · Juan Pablo Isaza 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