1
我找不到爲什麼此代碼與StringField
一起使用,但不是HiddenField
。添加變量date2
僅用於調試問題。HiddenField不返回值
(其實,我可以離開StringField那裏,但我花了一些時間來發現問題,我想明白了什麼是錯的,爲了不重蹈覆轍)
形式定義:
DAYS = 10
class _OneDayForm(Form):
alarmtime = StringField(validators=[Optional(), validate_time])
date2 = StringField() # json encoded [Y,M,D]
date = HiddenField() # json encoded [Y,M,D]
class _PerDayForm(Form):
days = FieldList(FormField(_OneDayForm), min_entries=DAYS)
submit = SubmitField()
Jinja2的模板:
<input name="{{ subform.date.name }}" type="hidden" value="{{ ymd }}">
<input name="{{ subform.date2.name }}" type="hidden" value="{{ ymd }}">
生成的HTML:
<input name="days-0-date" type="hidden" value="[2016, 12, 7]">
<input name="days-0-date2" type="hidden" value="[2016, 12, 7]">
StringField date2
返回其值,但HiddenField date
沒有。我試圖交換他們以確保StringField
與HiddenField
確實是唯一的區別。