Flask 学习-89.模板中迭代字典.items()

前言

django 中迭代字典,可以直接Dict.items,在flask 中迭代字典遇到了一些坑

迭代字典

视图部分

data = {
    "name": "yoyo",
    "email": "123@qq.com"
}


@app.route('/hello')
def hello():
    return render_template('hello.html', data=data)

在 django 中items 不需要加括号,直接这样写没问题

<body>
<p>迭代字典</p>
{% for key, value in data.items %}
   <p>{{key}}: {{ value }}</p>
{% endfor %}
</body>

但是flask 中会报错TypeError: 'builtin_function_or_method' object is not iterable

File "D:\demo\flask_api_demo\templates\hello.html", line 9, in top-level template code
{% for key, value in data.items %}
TypeError: 'builtin_function_or_method' object is not iterable

后来发现django 对jinja2 模板做了一些自己的封装,跟flask里面用的jinja2 模板语法有一些区别
在flask 模板中引用方法,需加括号.items()

<body>
<p>迭代字典</p>
{% for key, value in data.items() %}
   <p>{{key}}: {{ value }}</p>
{% endfor %}
</body>

posted @   上海-悠悠  阅读(181)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具
历史上的今天:
2021-10-14 python测试开发django-156.bootbox 垂直居中(上下居中)
2019-10-14 docker学习8-搭建nginx环境
2019-10-14 Locust性能测试6-命令行参数详解
点击右上角即可分享
微信分享提示