【发布时间】:2020-10-03 23:56:46
【问题描述】:
from flask_wtf import FlaskForm
from wtforms import StringField, SubmitField, SelectField
from wtforms.validators import DataRequired, ValidationError
from datetime import datetime
from meeting_app.models import Room
class ReservingForm(FlaskForm):
employee = StringField("Employee", validators=[DataRequired()])
start_date = StringField("start", validators=[DataRequired(), check_date])
end_date = StringField("end",validators=[check_end_date])
start_time = StringField("start-date", validators=[DataRequired(),check_time])
end_time = StringField("end-date", validators=[DataRequired(), check_time])
room = SelectField("Meeting Room",
choices=[ ("", "Choose Meeting Room"),("Room 1", "Room 1"),
("Room 2", "Room 2"),("Room 3", "Room 3"),("Room 4", "Room 4")],
validators=[DataRequired()],)
我正在尝试使用我在下面编写的代码更改房间选择字段...
cr_room = Room.query.all()
room = SelectField("Meeting Room",
choices=[ ((room.created_room),(room.created_room)) for room in cr_room ],
default=("", "Choose Meeting Room"), coerce=str)
但是不行,页面上没有看到selectfield默认值。
Flask==1.1.2 Flask-WTF==0.14.3 WTForms==2.3.1
【问题讨论】:
-
不,它对我不起作用。我正在运行较新版本的 wtforms(版本 2.3.1)
-
设置值的界面很久没变了。
-
不起作用,我从stackoverflow中尝试了所有这些答案,然后我在这里写了。我找不到问题,就这样写
codeform = ReservingForm() form.room.default =("", "Choose Meeting Room") form.process()code在 route.py文件,但它没有工作...... -
您是否尝试过使用实际值而不是空字符串?即
default="default"?
标签: python flask flask-sqlalchemy flask-wtforms