我的烧瓶应用程序正在使用flask-wtf形式完美地收集数据。收集后
@home.route('/add-new', methods=['POST', 'GET'])
def newlist():
return redirect( url_for('auth.login'))
form = ShoppingList()
if form.validate_on_submit():
#insert to list
item_id = len( shopping_lists ) + 1
shopping_list = ShoppingCart(session["email"], form.title.data, form.price.data,
form.quantity.data, item_id, form.description.data)
addToDic(session["email"], shopping_list)
result = shopping_lists
flash("List saved okay")
return render_template('home/dashboard.html', title="Dashboard", result = result)
#Render the dashboard template on the /dashboard route
return render_template('home/newlist.html',form=form, title="Add new")
我的问题是如何将结果dic打印到flask模板中的表格中。这是模板代码
<h3>HOME</h3>
<p>{{ utils.flashed_messages() }}</p>
<table class="table table-bordered">
<thead>
<tr>
<th>Item name</th>
<th>price</th>
<th>quantity</th>
<th>description</th>
</tr>
</thead>
<tbody>
<tr>
</tr>
</tbody>
</table>
非常感谢。请到达
答案 0 :(得分:1)
你应该咨询jinja2
documentation,因为它写得非常好而且全面的知识来源和你想要做的事情是非常简单的任务,在那里很早就有解释。
这是一个有效的例子:
<强> app.py 强>
from flask import Flask
from flask import render_template
app = Flask(__name__)
class MyObj(object):
def __init__(self, name, price, quantity):
self.name = name
self.price = price
self.quantity = quantity
@app.route('/')
def index():
my_objects = [
MyObj('I am a super-cool object!', 1000, 1),
MyObj('I am a cooler object!', 2000, 2),
MyObj('I am the coolest object!', 3000, 3),
]
return render_template('index.html', my_objects=my_objects)
if __name__ == '__main__':
app.run(debug=True)
<强>的index.html 强>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<style>
table, th, td {
border: 1px solid black;
}
</style>
</head>
<body>
<table>
<thead style="border: 1px solid black;">
<tr>
<th>Item name</th>
<th>price</th>
<th>quantity</th>
</tr>
</thead>
<tbody>
{% for ob in my_objects %}
<tr>
<td>{{ ob.name }}</td>
<td>{{ ob.price }}</td>
<td>{{ ob.quantity }}</td>
</tr>
{% endfor %}
</tbody>
</table>
</body>
</html>