我想用此查询返回的行填充WTForms SelectField:
cur.execute("SELECT length FROM skipakke_alpin_ski WHERE stock > 0")
该查询返回具有不同类型滑雪板的滑雪板长度的行。
cur.fetchall()
返回以下元组:[(70,), (75,), (82,), (88,), (105,), (115,), (125,), (132,), (140,), (150,), (160,), (170,)]
我该如何将这些数字添加到
SelectField
中,以便每个滑雪板长度成为其自己的可选选择?如果我手动完成此操作,则将执行以下操作:ski_size = SelectField('Ski size', choices=['70', '70', '75', '75'])
...对于所有不同的长度,依此类推。
最佳答案
在一个我使用过的项目中,如下所示:
楷模
class PropertyType(db.Model):
id = db.Column(db.Integer, primary_key=True)
title = db.Column(db.String(255), nullable=False)
def __repr__(self):
return str(self.id)
和形式
from wtforms.ext.sqlalchemy.fields import QuerySelectField
class PropertyEditor(Form):
property_type = QuerySelectField(
'Property Type',
query_factory=lambda: models.PropertyType.query,
allow_blank=False
)
//Other remaining fields
希望这可以帮助。
关于python - 使用SQL查询填充WTForms SelectField,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/43548561/