[python] Flask-WTF에서 사용자가 입력한 값을 다국어로 제공하는 방법은 어떻게 되나요?
  1. 다국어 지원을 위한 라이브러리 설치

    먼저, Flask-WTF에서 다국어를 지원하기 위해 Flask-Babel이라는 라이브러리를 설치해야 합니다. 다음 명령을 사용하여 설치할 수 있습니다:

    pip install flask-babel
    
  2. 다국어 설정

    Flask 애플리케이션에서 다국어 지원을 위해 다음과 같이 Flask-Babel을 설정해야 합니다:

    from flask_babel import Babel
    from flask import Flask
    
    app = Flask(__name__)
    babel = Babel(app)
    
  3. 번역 파일 생성

    Flask-Babel을 사용하면 번역할 문자열을 번역 파일에 기록해야 합니다. messages.po 파일을 생성하고, 다국어로 제공하고자 하는 문자열을 해당 파일에 기록합니다.

    flask translate init
    
  4. 번역 함수 사용

    사용자가 입력한 값을 다국어로 제공하려면 다음과 같이 언어 설정과 번역 함수를 사용해야 합니다:

    from flask import g, request
    from flask_babel import gettext
    
    @app.before_request
    def before_request():
        g.locale = request.accept_languages.best_match(['en', 'es'])
    
    @app.route('/submit', methods=['POST'])
    def submit():
        input_value = request.form.get('input_value')
        translated_value = gettext(input_value)
        return f'Translated value: {translated_value}'
    

    위 코드에서 g.locale 설정은 사용자가 원하는 언어로 설정되도록 하며, gettext 함수는 번역 파일에서 문자열을 번역해주는 역할을 합니다.

    이제 사용자가 입력한 값을 다국어로 제공할 수 있는 Flask-WTF 애플리케이션을 구축할 수 있습니다.

참고 문서: Flask-Babel 공식 문서 (https://flask-babel.tkte.ch/)