我正在尝试使用WTForms预填充一个Select字段。 我想使用数据库中的数据预填充Select字段(value和label)。在
数据库:
+----+----------+-------------------------------------+--------+
| id | category | description | status |
+----+----------+-------------------------------------+--------+
| 1 | Cinema | About movies | 1 |
| 2 | Play | About music. | 0 |
| 3 | News | Breaking news | 1 |
+----+----------+-------------------------------------+--------+
我想要一个QuerySelectField等价于:
^{pr2}$到目前为止,我已经做到了:
def getCategories():
return Category.query.filter_by(status=1).all()
class MyForm(Form):
category = QuerySelectField(u'Category',
[validators.Required()],
query_factory = getCategories
)
标签的呈现方式如下:
<select class="form-control" id="category" name="category">
<option value="1"><models.Category object at 0x105064910></option>
<option value="3"><models.Category object at 0x105064d50></option>
</select>
你做得很好。QuerySelectField使用模型对象的字符串表示形式进行显示。只需将一个
__str__
函数添加到类别模型中,该函数将返回类别名称。在我想你可以试试这个代码
categorie=QuerySelectField(query_factory=lambda:Category.query.filter_by(status=1).all(),get_label="name")
以你的形式 你可以找到更多这个很棒的旋转木马他们使用它simpe crud app with forms
相关问题 更多 >
编程相关推荐