所以我有一个 sqlite db 文件,我使用 python 脚本生成该文件,我正在读取该文件以将信息呈现给 Flask 端点。
端点解析数据库中的项目并生成我随后传递给 Jinja 模板的 dict 对象:
@app.route('/endpoint', method=['GET', 'POST'])
def someFunction:
<< generate finalDict via db queries >>
return render_template('whatever.html', **"finalDict": finalDict})
whatever.html
然后呈现一个引导表,即
<table>
<tr>
<th>
Header 1
</th>
...
</tr>
<tr>
<td>
{{ finalDict['someitem'] }}
</td>
...
</tr>
</table>
到目前为止,一切都很好,一切都呈现出我希望的样子。
我想要做的是在我的表中有最后一列,其中包含一个下拉菜单,允许用户对该行中的项目进行分类。
因此,如果该行看起来像ID | name | whatever
,它将有一个 final| [dropdown]
允许用户选择一个分类,这将始终是三种可能性之一。
我真正想知道如何构建 HTML,并且大概是if request.method == 'POST':
端点中的一个捕获,以根据需要更新数据库。
是否可以将整个表视为一个form
对象,然后在用户使用上述捕获单击提交按钮后对其进行解析?
如果不是,那么考虑到我在这里要做的事情,构建事物的最佳方式是什么?