在烧瓶jinja2中使用for循环时遇到麻烦。这就是我所做的。
mongodb集合
firstCollection = {{"company":"apple"},{"company":"tesla"},{"company":"google"}}
secondCollection = {{"number":"1"},{"number":"2"},{"number":"3"}}
run.py
import flask
import pymongo
from flask import abort, Flask, render_template
from flask_pymongo import PyMongo
app = Flask(__name__)
app.config["MONGO_URI"] = "mongodb://localhost:27017/mrstock"
mongo = PyMongo(app)
@app.route("/")
def test():
coll1 = mongo.db.firstCollection
coll2 = mongo.db.secondCollection
coll1Datas = coll1.find({})
coll2Datas = coll2.find({})
return render_template("test.html",coll1Datas=coll1Datas,coll2Datas=coll2Datas)
if __name__ == "__main__" :
app.run(debug=True)
test.html
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
{% for coll1 in coll1Datas %}
{{coll1.company}}
{% for coll2 in coll2Datas %}
{{coll2.number}}
{% endfor %}
{% endfor %}
</body>
</html>
结果看起来像这样
apple 123 tesla google
这是for循环,因此,我期望像
apple 123 tesla 123 google 123
为什么第一个循环中的第二个循环只工作一次?我做了几次测试,我认为在for循环之后,jinja2不再有数据信息了。如何反复使用烧瓶中发送的数据“ for loop”?谢谢您的支持!