[python] Flask에서 플라스크-와트 기능 활용하기
플라스크(Flask)는 파이썬으로 웹 애플리케이션을 개발할 때 사용하는 경량 웹 프레임워크입니다. 이번에는 Flask 애플리케이션에 플라스크-와트(Flask-WTF)를 사용하여 웹 폼 기능을 추가하는 방법에 대해 살펴보겠습니다.
1. 플라스크-와트 설치
플라스크-와트를 사용하기 위해서는 먼저 패키지를 설치해야 합니다. 코드 아래와 같이 플라스크-와트를 설치합니다.
pip install Flask-WTF
2. 플라스크-와트를 이용한 폼 생성
먼저 app.py
파일에 다음과 같은 코드를 추가하여 플라스크-와트 폼을 생성합니다.
from flask import Flask, render_template
from flask_wtf import FlaskForm
from wtforms import StringField, SubmitField
from wtforms.validators import DataRequired
app = Flask(__name__)
app.secret_key = 'your_secret_key'
class MyForm(FlaskForm):
name = StringField('Name', validators=[DataRequired()])
submit = SubmitField('Submit')
@app.route('/', methods=['GET', 'POST'])
def index():
form = MyForm()
if form.validate_on_submit():
# 폼 데이터 처리
return 'Success'
return render_template('index.html', form=form)
if __name__ == '__main__':
app.run(debug=True)
위 코드에서는 플라스크-와트 모듈을 사용하여 MyForm
이라는 폼을 생성하고, index
뷰 함수에서 이 폼을 사용합니다. 만약 폼이 제출되면 데이터를 처리하고, 그렇지 않을 경우 폼을 렌더링하여 사용자에게 보여줍니다.
3. HTML 템플릿에 폼 렌더링
마지막으로, index.html
파일에 폼을 렌더링하는 내용을 추가합니다.
<!DOCTYPE html>
<html>
<head>
<title>Form</title>
</head>
<body>
<form method="POST">
{{ form.csrf_token }}
{{ form.name.label }} {{ form.name(size=32) }}
{{ form.submit() }}
</form>
</body>
</html>
위 코드는 플라스크-와트 폼을 HTML 템플릿에 렌더링하는 방법을 보여줍니다.
플라스크-와트를 사용하여 플라스크 애플리케이션에 웹 폼을 간단히 추가할 수 있습니다. 이를 통해 사용자 입력을 쉽게 수집하고 처리할 수 있게 됩니다.
더 자세한 내용은 플라스크-와트 공식 문서를 참고하시기 바랍니다.