[python] Flask-WTF에서 사용자가 입력한 값을 초기화하고 기본값으로 설정하는 방법은 어떻게 되나요?
  1. Flask-WTF의 Form 클래스를 상속하여 사용자 정의 폼을 생성합니다.
from flask_wtf import FlaskForm
from wtforms import StringField, SubmitField

class MyForm(FlaskForm):
    name = StringField('Name')
    email = StringField('Email')
    submit = SubmitField('Submit')
  1. 뷰 함수에서 폼 인스턴스를 생성하고 기본값을 설정합니다.
from flask import Flask, render_template, request
from flask_wtf import CSRFProtect

app = Flask(__name__)
app.config['SECRET_KEY'] = 'your-secret-key'  # 비밀 키 설정
csrf = CSRFProtect(app)

@app.route('/form', methods=['GET', 'POST'])
def form():
    form = MyForm(request.form)  # 폼 인스턴스 생성
    if request.method == 'POST':
        # 사용자가 전송한 값으로 폼을 채웁니다.
        form.name.data = request.form['name']
        form.email.data = request.form['email']
        # 기본값을 설정합니다.
        form.name.default = 'John Doe'
        form.email.default = 'johndoe@example.com'
    return render_template('form.html', form=form)
  1. HTML 템플릿에서 폼 필드를 다음과 같이 렌더링합니다.

<form method="POST" action="{{url_for('form')}}">
    {{ form.hidden_tag() }}
    {{ form.name.label }} {{ form.name }}
    {{ form.email.label }} {{ form.email }}
    {{ form.submit }}
</form>

위 코드에서 form.name.defaultform.email.default를 사용하여 해당 필드의 기본값을 설정할 수 있습니다. 따라서 사용자가 입력한 값이 없을 경우, 폼을 렌더링할 때 기본값이 자동으로 설정됩니다.

더 자세한 내용은 FlaskFlask-WTF 공식 문서를 참고하시기 바랍니다.