2018年4月10日火曜日

フォームライブラリ「WTForms」でカスタムバリデーション

フォームライブラリ「WTForms」でカスタムバリデーションです。 formとfieldを引数とした関数を利用することで、バリデーターとして利用できるらしい。

from wtforms import Form, StringField, PasswordField, validators, ValidationError

def my_length_check(form, field):
  if len(field.data) > 20:
    raise ValidationError('20文字以下で記入してください。')

class LoginForm(Form):
  userid = StringField('ユーザーID', [validators.DataRequired(), my_length_check])
  password = PasswordField('パスワード', [validators.DataRequired(), my_length_check])

実際に設定してみたのがこちら

参考サイト
Custom validators(WTForms Documentation)

0 件のコメント:

コメントを投稿