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

159
Views
El servidor Django no muestra la información de la base de datos en la plantilla html

Estoy intentando hacer un ecommerce y al crear la base de datos no se actualiza en el checkout.html. página. Debajo del código.

views.py

 def cart(request): if request.user.is_authenticated: customer = request.user.customer order, created = Order.objects.get_or_create(customer = customer, complete = False) items = order.orderitem_set.all() else: items = [] order = {'get_cart_total':0, 'get_cart_items':0} context = {'items':items, 'order':order} return render(request, 'store/cart.html', context) def checkout(request): if request.user.is_authenticated: customer = request.user.customer order, created = Order.objects.get_or_create(customer = customer, complete = False) items = order.orderitem_set.all() else: items = [] order = {'get_cart_total':0, 'get_cart_items':0} context = {} return render(request, 'store/checkout.html', context)

checkout.html

 {% for item in items %} <div class="cart-row"> <div style="flex:2"><img class="row-image" src="{{item.product.imageURL}}"></div> <div style="flex:2"><p>{{item.product.name}}</p></div> <div style="flex:1"><p>${{item.product.price|floatformat:2}}</p></div> <div style="flex:1"><p>x{{item.quantity}}</p></div> </div> {% endfor %}

funciona para cart.html pero no funciona para checkout.html y no se muestran errores para buscar. Cualquier ayuda será apreciada.

over 4 years ago · Santiago Trujillo
1 answers
Answer question

0

El contexto está vacío. El contexto es un diccionario donde los nombres de las variables utilizadas en la plantilla se asignan a los valores correspondientes.

Si desea pasar items a la plantilla, escriba:

 def checkout(request): if request.user.is_authenticated: customer = request.user.customer order, created = Order.objects.get_or_create(customer = customer, complete = False) items = order.orderitem_set.all() else: items = [] order = {'get_cart_total':0, 'get_cart_items':0} # pass items ↓ pass order ↓ context = { 'items': items , 'order': order } return render(request, 'store/checkout.html', context)

Aquí los items serán un conjunto de consultas vacío, ya que toma el orderitem_set de la order , pero en ese momento no creó un objeto OrderItem que esté vinculado a esa Order , por lo que probablemente primero deba crear OrderItem s para la order creada.

over 4 years ago · Santiago Trujillo 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!