【发布时间】:2018-06-13 10:57:38
【问题描述】:
我已经在这个问题上咬指甲有一段时间了。在我的 Flask 应用程序中,我目前有一个产品数据库,在应用程序中我有一个页面,可以将每个产品列查询到一个表中。
例如,我有产品1234,我可以在example.com/items/1234 中查看其详细信息(即数据库列),这将为我提供以下信息:
<div class="container">
<div class="content">
<a href="/item">Back</a>
<table class="table">
<thead>
<tr>
<th>#</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<th scope="row">Detail-1<th>
<td>Example</td>
</tr>
<tr>
<th scope="row">Detail-2</th>
<td>Example</td>
</tr>
我正在努力解决以下问题:
我希望能够添加具有相同表格样式的新产品。为此,我创建了如下表单:
class NewArticleForm(FlaskForm):
detail_1 = StringField("Detail-1")
detail_2 = IntegerField("Detail-2")
...
submit = SubmitField("Submit")
我现在完全不知道如何在模板中自定义表单外观,而不仅仅是{{ wtf.quick_form(form) }}。我尝试的是以下内容:
<form method="POST">
<table class="table">
{% for name in form %}
<tr>
<th scope="row">{{ name.label }}</th>
<td>{{ name }}</td>
</tr>
{% endfor %}
</table>
</form>
表格看起来不错(至少是这样),但我认为请求没有正确发送。该页面使用"POST /url HTTP/1.1" 正确加载,但似乎没有正确通过。
我的意思是,虽然请求被正确发送,但我可以看到我是否通过 Flask 服务器运行应用程序。但是,似乎没有任何内容传输到数据库。页面只是重新加载,输入的数据仍在字段中,没有任何内容传输到数据库。如果我只是使用wtf.quick_form,那么数据会正确发送到数据库。
那么我该如何正确自定义表单外观和/或我错过的关键步骤?
【问题讨论】:
-
抱歉,我编辑了我的帖子,以便更准确地说明什么不起作用。
-
为你的烧瓶路线添加代码?
-
你必须分享视图函数代码,比如你如何从提交的表单中获取数据。