Flask-WTF를 사용하여 양식 유효성 검사를 구현하는 방법
Flask-WTF는 웹 양식 유효성 검사를 처리하기 위한 Flask 확장 프로그램으로 사용자가 제출한 데이터의 유효성을 검사하는 간결하고 유연한 방법을 제공합니다. 이 문서에서는 Flask-WTF 확장을 사용하여 양식 유효성 검사를 구현하는 방법을 보여줍니다.
Flask-WTF를 사용하려면 먼저 설치가 필요합니다. pip 명령을 사용하여 설치할 수 있습니다:
pip install Flask-WTF
Flask 애플리케이션에서 Flask-WTF를 사용하려면 일부 모듈을 가져와야 합니다. app.py 파일에 다음 import 문을 추가합니다.
from flask import Flask, render_template, request from flask_wtf import FlaskForm from wtforms import StringField, PasswordField, SubmitField from wtforms.validators import DataRequired, Length
여기에서 가져온 모듈에는 Flask, FlaskForm 및 일반적으로 사용되는 일부 필드와 유효성 검사기가 포함됩니다.
app.py 파일에서 FlaskForm을 상속하는 양식 클래스를 만듭니다. 각 양식 필드는 클래스의 속성으로 정의되며, 적용할 유효성 검사기는 validators 매개 변수를 통해 지정할 수 있습니다. 예를 들어 다음은 간단한 로그인 양식 클래스입니다.
class LoginForm(FlaskForm): username = StringField('用户名', validators=[DataRequired(), Length(min=4, max=20)]) password = PasswordField('密码', validators=[DataRequired()]) submit = SubmitField('登录')
이 양식 클래스에는 사용자 이름 필드, 비밀번호 필드 및 제출 버튼이 포함되어 있습니다.
Flask 앱을 만들고 라우팅 기능에서 양식을 사용하세요. 예:
app = Flask(__name__) app.secret_key = 'your-secret-key' @app.route('/login', methods=['GET', 'POST']) def login(): form = LoginForm() if form.validate_on_submit(): # 表单验证通过 # 执行登录逻辑 return '登录成功' return render_template('login.html', form=form) if __name__ == '__main__': app.run()
이 예에서는 로그인 양식을 표시하기 위해 /login 경로를 만들었습니다. 사용자가 양식을 제출하면 확인을 위해 verify_on_submit() 메서드가 호출됩니다. 확인이 통과되면 로그인 논리가 실행될 수 있습니다. 그렇지 않으면 양식 페이지가 다시 렌더링되고 확인 오류 메시지가 표시됩니다.
템플릿 폴더에 login.html이라는 이름의 템플릿 파일을 생성하여 로그인 양식을 표시합니다. Flask-WTF에서 제공하는 양식 속성을 사용하여 양식 HTML 코드 및 유효성 검사 오류 정보를 생성할 수 있습니다. 예:
<!DOCTYPE html> <html> <head> <title>登录</title> </head> <body> <h1>登录</h1> <form method="POST" action="{{ url_for('login') }}"> {{ form.csrf_token }} {{ form.username.label }} {{ form.username }} {% for error in form.username.errors %} <span style="color: red;">{{ error }}</span> {% endfor %} <br> {{ form.password.label }} {{ form.password }} {% for error in form.password.errors %} <span style="color: red;">{{ error }}</span> {% endfor %} <br> {{ form.submit }} </form> </body> </html>
이 템플릿 파일에서 form.csrf_token을 사용하여 교차 사이트 요청 위조 방지 필드를 생성합니다. 양식 필드와 유효성 검사 오류 메시지는 각각 양식 필드와 form.errors 속성을 통해 생성될 수 있습니다.
다음 명령을 사용하여 애플리케이션을 실행하세요.
python app.py
로그인 페이지를 보려면 브라우저에서 http://localhost:5000/login을 방문하세요. 사용자 이름과 비밀번호를 입력하고 제출 버튼을 클릭하면 확인 결과에 따라 양식 데이터가 확인되고 처리되는 것을 볼 수 있습니다.
위는 Flask-WTF를 사용하여 양식 유효성 검사를 구현하는 기본 단계입니다. 이 방법을 통해 사용자가 제출한 데이터를 쉽게 검증하여 적법성과 보안을 보장할 수 있습니다. 뿐만 아니라 Flask-WTF는 파일 업로드, 다국어 지원 등과 같은 기타 풍부한 기능도 제공합니다. 이 글이 여러분에게 도움이 되기를 바라며, Flask-WTF를 사용하여 양식 유효성 검사를 더 잘 처리할 수 있기를 바랍니다.
위 내용은 Flask-WTF를 사용하여 양식 유효성 검사를 구현하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!