1
私はフォームを作成していますが、試して検証するたびに何らかの理由で常にFalseを返します。WTForms Form.validate(self)は常にfalseを返します
フォーム:
class AddStuffForm(Form):
myList = [(idx,int(val.tier)) for idx,val in enumerate(getList())]
myList.remove((2,3)) # this is an element I don't want in the list
myListForm = SelectField("List:", [Required()], choices=myList)
def __init__(self, *args, **kwargs):
""" Constructor. """
Form.__init__(self, *args, **kwargs)
self.user = None
def validate(self):
""" Validates registration form. """
rv = Form.validate(self)
if not rv:
return False
再生回数:
@app.route('/addStuff', methods=['GET', 'POST'])
def addStuff():
""" Submits register form. """
form = AddStuffForm()
if form.validate_on_submit():
return redirect(url_for('addStuff'))
return render_template('/AddStuff.html', form=form)
AddStuff.html:
{% extends "layout.html" %}
{% block content %}
<h1>Add stuff</h1>
<form method="POST" action="{{ url_for('addStuff') }}">
{{ form.hidden_tag() }}
<p>{{ form.myListForm.label }} {{ form.myListForm(size=1) }}</p>
<input type="submit" value="Add it">
</form>
{% endblock %}
問題を見上げたとき、私は見つけることができた唯一の事は言うまで"{{form.hidden_tag()}}"がHTMLに含まれていることを確認してください。ご覧のとおり、私はすでにそれを持っています。 SelectFieldに何かエラーがありますか?