WTForms를 사용하여 Select Field를 미리 채우려합니다. 데이터베이스의 데이터를 사용하여 선택 필드 (값 및 레이블)를 미리 채우고 싶습니다.Pre-populate (Query) SelectField - WTForms?
데이터베이스 :
+----+----------+-------------------------------------+--------+
| id | category | description | status |
+----+----------+-------------------------------------+--------+
| 1 | Cinema | About movies | 1 |
| 2 | Play | About music. | 0 |
| 3 | News | Breaking news | 1 |
+----+----------+-------------------------------------+--------+
나는이에
QuerySelectField 동등합니다 :
class MyForm(Form):
category = SelectField(u'Category', choices=[('1', 'Cinema'), ('3','News')])
지금까지 이런 짓을했습니다
def getCategories():
return Category.query.filter_by(status=1).all()
class MyForm(Form):
category = QuerySelectField(u'Category',
[validators.Required()],
query_factory = getCategories
)
레이블이 같은 렌더링 this :
<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>