You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Django模板中如何从Session嵌套字典获取内部字段数据

Django模板中遍历嵌套字典获取内部字段的方法

你遇到的问题是因为Django模板中直接遍历字典时,默认只会迭代字典的键。要获取每个键对应的嵌套字段,你可以通过字典的items()方法同时获取键和对应的嵌套字典值,具体操作如下:

模板代码示例

{% for product_id, item_info in itens.items %}
  <div class="cart-item">
    <h4>商品ID: {{ product_id }}</h4>
    <p>购买数量: {{ item_info.quantity }}</p>
    <p>单价: {{ item_info.price }}</p>
    <p>商品小计: {{ item_info.totalitem }}</p>
  </div>
{% endfor %}

原理说明

  • itens.items()会返回字典的键值对迭代器,每次循环时,product_id会拿到外层字典的键(比如3、1),item_info则拿到对应的嵌套字典(比如{'quantity': 1, 'price': 4.0, ...})。
  • 通过item_info.字段名的方式,就能直接访问嵌套字典里的quantity、price等属性。

如果不想在模板里调用items(),也可以在视图层提前处理数据:

# views.py中修改数据传递逻辑
itens = list(request.session['cart'].items())  # 转成键值对列表
return render(request, 'cart/cart_page.html', {'itens': itens})

然后模板里可以这样循环:

{% for product_id, item_info in itens %}
  <!-- 同上面的渲染逻辑 -->
{% endfor %}

内容的提问来源于stack exchange,提问作者Kaynan Kaynan Felipe Rodrigues

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.18 06:01:17