[python] Flask-WTF에서 사용자에게 선택적인 필드를 보여주거나 숨기는 방법은 무엇인가요?

예를 들어, 사용자의 선택에 따라 HiddenField를 보여주고 숨기기 위해 다음과 같은 코드를 사용할 수 있습니다:

from flask import Flask, render_template, request
from flask_wtf import FlaskForm
from wtforms import HiddenField, SelectField, StringField, SubmitField
from wtforms.validators import DataRequired

app = Flask(__name__)
app.config['SECRET_KEY'] = 'your-secret-key'

class MyForm(FlaskForm):
    show_hidden = BooleanField('Show hidden field')
    hidden_field = HiddenField('Hidden Field')
    select_field = SelectField('Select Field', choices=[('choice1', 'Choice 1'), ('choice2', 'Choice 2')])
    text_field = StringField('Text Field', validators=[DataRequired()])
    submit_button = SubmitField('Submit')

@app.route('/', methods=['GET', 'POST'])
def index():
    form = MyForm(request.form)

    if form.validate_on_submit():
        # 처리 로직

    if form.show_hidden.data:
        form.hidden_field.widget = HiddenInput()

    return render_template('index.html', form=form)

if __name__ == '__main__':
    app.run()

위의 예제에서, show_hidden이라는 BooleanField를 추가하여 사용자에게 ‘Show hidden field’ 체크박스를 보여줍니다. 이 체크박스를 선택하면, hidden_field가 숨겨진 필드로 변경됩니다.

이렇게 함으로써 사용자는 선택적인 필드를 보거나 숨길 수 있습니다. 해결되지 않은 문제가 있다면, WTForms 문서(https://wtforms.readthedocs.io/)를 참조하시기 바랍니다.