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

242
Views
¿Cómo analizar el objeto JSON LocalStorage en Django View desde Ajax?

Estoy tratando de enviar datos de almacenamiento local a través de una solicitud POST utilizando el siguiente método jquery ajax. ¿Cómo debo escribir mi vista para poder analizar mi objeto JSON y obtener "product_id" para ejecutar el siguiente comando en mi vista de Django? Por favor, vea una copia de mi vista a continuación.

Intentando desde una semana, pero no pude solucionar el problema

¿Hay alguna forma mejor de lograr esto?

Mi Ajax:

 $(document).ready(function() { var compare = localStorage.getItem("comparisionItems"); var compareObj = JSON.parse(compare); var data_url = window.location.href; console.log(compare) console.log(compareObj) $.ajax({ url: data_url, type: "POST", data: {'compare_id': compareObj }, headers: { "X-CSRFToken": $.cookie("csrftoken") }, success: function (result) { console.log("Success") }, }); });

y Mis vistas:

 def compare(request): is_ajax = request.headers.get('X-Requested-With') == 'XMLHttpRequest' if is_ajax and request.method == "POST": compare_id= request.POST.getlist('compare_id[itemIds]') product = get_object_or_404(Products, id=compare_id) context={ 'product':product} return render (request, './compare.html', context)

En realidad, mi almacenamiento local tiene el siguiente formato:

("comparisionItems"({ imágenes: productos, itemIds: itemIds }));

¿Pueden ayudarme, por favor, cómo puedo pasar los identificadores de elementos a las vistas y devolver el elemento de las vistas para los identificadores de elementos?

Registro de consola para console.log(compareObj) https://imgur.com/MxdZrgy

about 4 years ago · Juan Pablo Isaza
1 answers
Answer question

0

dado que .is_ajax() está en desuso, no puede usarlo, pero puede verificar si la solicitud es un XMLHttpRequest como a continuación.

 from django.shortcuts import get_object_or_404 def compare(request): is_ajax = request.headers.get('X-Requested-With') == 'XMLHttpRequest' if is_ajax and request.method == "POST": compare_id = request.POST.get('compare_id') product = get_object_or_404(Products, product_id=id) context={ 'product':product,} return render (request, './ecommerce/compare.html', context)

Nota; get_object_or_404 es solo un atajo para:

 try: product = Products.objects.get(product_id=id) except: raise Http404
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!