在Flask中创建包含数据库值的HTML表

时间:2017-02-04 12:30:32

标签: python flask jinja2

我想显示一个表格,显示表格中每个单位的三个字段的值。从数据库创建字典并将对象传递给模板的一些帮助将非常感激。

@app.route('/')
def index(row):
    unit_count = Units.query.count()
    unit = Units.query.filter_by(id=row).first()
    rows = [] # Unsure how to define rows from Units db table
    return render_template('table_overview.html', title='Overview', rows=rows, unit=unit)
{% for row in rows %}
<tr>
    <td>{{ row.unit.idnum }}</a></td>
    <td>{{ row.unit.product_code }}</td>
    <td bgcolor="{{ row.unit.stat_colour }}">{{ row.unit.unit_status }}</td>
</tr>
{% endfor %}

1 个答案:

答案 0 :(得分:2)

首先,您的视图功能无法接收您指定的row输入。如果您尝试显示表格中的所有行,您可以这样做:

views.py:

@app.route('/')
def index():
    rows = Units.query.all()
    return render_template('table_overview.html',
                            title='Overview',
                            rows=rows)

table_overview.html(模板)

    {% for row in rows %}
    <tr>
        <td>{{ row.idnum }}</a></td>
        <td>{{ row.product_code }}</td>
        <td bgcolor="{{ row.stat_colour }}">{{ row.unit_status }}</td>
    </tr>
    {% endfor %}