Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

131
Views
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 answers
Answer question

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 Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!