我有一个烧瓶/wtforms 应用程序,我正在从 wtforms 0.6.ish 升级到 1.0.5。开发盒是使用 wtforms 0.6 的 ubuntu,而生产将是使用 wtforms 1.0.5 的 amazon ami。
为了任何人的利益,到目前为止,以下更改是:
从:
from flask.ext.wtf import Form, TextField
from flask.ext.wtf import Required
至:
from wtforms import Form, TextField, validators
从:
def index():
form=SubmitForm()
if form.validate_on_submit():
return render_template('js.html',ht=form.ht.data)
至:
def index():
form=SubmitForm
if request.method == 'POST' and form.validate():
return render_template('js.html',ht=form.ht.data)
还:
class SubmitForm(Form):
ht = TextField('ht', validators = [Required()])
class SubmitForm(Form):
ht = TextField('ht', [validators.Required()])
问题在于,在 wtforms 1.0.5 中,表单变量 'ht' 从未设置。如果我尝试将其打印到控制台,则为“无”。我没有对模板进行任何更改。我可以在类中设置一个默认值,但它不会被用户在表单中输入的内容所取代。