required()
またはのような検証を含むフォームがありNumberRange
ます。
これは検索機能なので、getメソッドを使用しています。問題は、form.validate_on_submit()
getでは使用できないことです。post
期待通りにすべての作業が、とget
フォーム提出基本的には決して検証で、検証を無視します。
この状況に対処するための最良の方法は何ですか?
class DocSearch(Form):
client_number = IntegerField(lazy_gettext(u'Client number'), [Required()])
submit = SubmitField(lazy_gettext(u'Find'))
<form method="get" class="form" role="form">
<div class="form-group ">
{{ render_field(form.client_number) }}
</div>
<div class="form-group ">
{{ render_field(form.submit) }}
</div>
</form>
validate_on_submit
は、他の2つのメソッドを呼び出す便利な関数です。最初の、はis_submitted
、POSTおよびPUT要求をチェックします。2番目の、validate
は、実際の検証を行います。それはあなたが必要とするものです。
if form.validate():
# do stuff here
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加