我想根据查询搜索填充选择字段。
但我也想要一个空选项。
这是我目前的代码
form.state.choices=[(s.id, s.name) for s in State.query.all()]
结果是
<select>
<option value="CA">California</option>
<option value="FL">Florida</option>
</select>
期望的结果是
<select>
<option value=""></option>
<option value="CA">California</option>
<option value="FL">Florida</option>
</select>
如果select选项为空,那么如果无效也会很酷。
答案 0 :(得分:9)
您可能想要添加如下的空值:
choices = [("", "---")]
form.state.choices=[choices.append((s.id, s.name)) for s in State.query.all()]
然后你可以检查值是否为空字符串以验证字段。
答案 1 :(得分:2)
您也可以在同一行中添加空值:
form.state.choices=[("", "---")]+[(s.id, s.name) for s in State.query.all()]