如何在会话中的行中保存项目列表并将其显示在django中的模板上

时间:2017-12-05 18:00:06

标签: python ajax django

请帮助解决我的困境,因为我还是django python的新手。

正在开发一个购物车应用程序,其中ajax接收购物车物品并通过POST发送到django中的View

    Django View中的
  •  def add_product (request):
         if is_ajax or request.POST:
             productname = request.POST.get('productname','')
             price = request.POST.get('price')
             quantity = request.POST.get('quantity', '')
             cartsession = request.session.get('cartitems', {})
             cartsession[productname] = productname
             cartsession[price] = price
             cartsession[total] = total
             cartsession[quantity] = quantity
    
             request.session.get('cartitem') = cartsession
             return render(request, 'cartset.html',{'cartsession':cartsession})
    
模板上的

{% for cart in cartsession %}

  { cart.productname}

{% endfor %}

在上面的代码之后,模板页面上没有显示任何内容......

有人请帮忙

1 个答案:

答案 0 :(得分:0)

您的代码存在多个问题,

views.py

cartsession['productname'] = productname
cartsession['price'] = price

要在模板中按键显示字典值,

{{ cartsession.price }}
{{ cartsession.productname }}

如果要迭代字典项,请使用以下代码。

{% for key,value in cartsession.items %}
    {{ key }} : {{ value }}
{% endfor %}