API 那里传出来的数据是一个列表(list),列表里面有字典(dictionary), 字典里面有图片名字。现在想在模板那里遍历这个列表获取图片名字,然后把这个名字作为变量传到模板中的 url_for()
。现在以下两种方法测试过皆可行,但是总觉得写法有点怪怪。不知道各位老哥一般是怎么写的,可否提点一下,谢谢!
这是 API:
DATE = [
{
"name": "image1",
"date": "20210810"
},
{
"name": "image2",
"date": "20210811"
}
]
@app.route("/home", methods=["POST", "GET"])
def home():
return render_template("home.html", data=DATE)
写法一:
{% for d in data: %}
<img src="{{ url_for('static', filename='img/' + d.name + '.jpg') }}">
{% endfor %}
写法二:
{% for d in data: %}
<img src="/static/img/{{d.name}}.jpg">
{% endfor %}
1
Deteriorator 2021-08-11 16:21:00 +08:00
第一种写法比较好吧
|
2
sudoy OP @Deteriorator 第一种写法 url_for 是官方推荐的,但是把变量传到文件名里面这样写好像有点怪怪的
|
3
cz5424 2021-08-11 23:25:45 +08:00 1
现在用着模板都觉得变扭,前后端分离不香吗,url_for 是官方推荐的,目的是 static 的路径可以变化
|