PythonのWebフレームワークであるFlaskでは、WTFormsというライブラリを使用してフォームのバリデーションを行うことができます。以下にその基本的な手順を示します。
まず、FlaskFormを継承したクラスを作成します。このクラスでは、各入力フィールドとそのバリデーションを定義します。
from flask_wtf import FlaskForm
from wtforms import StringField, ValidationError
class MyForm(FlaskForm):
name = StringField('Name')
def validate_name(self, field):
if len(field.data) > 50:
raise ValidationError('Name must be less than 50 characters')
上記の例では、name
という文字列フィールドを定義し、そのバリデーションとして名前が50文字を超えていないことを確認しています。
次に、このフォームを使用してデータを検証します。具体的には、validate_on_submit()
メソッドを使用して、フォームが送信され、すべてのバリデーションがパスした場合にTrueを返します。
@app.route('/submit', methods=('GET', 'POST'))
def submit():
form = MyForm()
if form.validate_on_submit():
return 'Form Successfully Submitted!'
return render_template('submit.html', form=form)
以上がFlaskでの基本的なフォームバリデーションの流れです。WTFormsは非常に柔軟性が高く、様々な種類のフィールドやバリデーションルールを定義することが可能です。具体的な使用方法や詳細は公式ドキュメンテーションを参照してください。.