こんにちは、ご挨拶できて光栄です。今日、Babel de Flask が私に提示しているエラーについて助けを求めに来ました。
コードの最後に、エラー メッセージを引用して示します。
次に使用したコード。
私はinit .pyを追加します
import os
from flask import Flask, request
from werkzeug.datastructures import ImmutableDict
import flask_babel as babel
from flask_babel import gettext as _
b = babel.Babel()
app = Flask(__name__, instance_relative_config=True)
b.init_app(app)
@babel.localeselector
def get_locale():
# if the user has set up the language manually it will be stored in the session,
# so we use the locale from the user settings
try:
language = session['language']
except KeyError:
language = None
if language is not None:
return language
return request.accept_languages.best_match(passbyte.config['LANGUAGES'].keys())
@app.route('/language/<language>')
def set_language(language=None):
session['language'] = language
return redirect(url_for('home'))
@app.context_processor
def inject_conf_var():
return dict(AVAILABLE_LANGUAGES=app.config['LANGUAGES'], CURRENT_LANGUAGE=session.get('language',request.accept_languages.best_match(app.config['LANGUAGES'].keys())))
私 > config.py
# -*- coding: utf-8 -*-
# ...
# available languages
LANGUAGES = {
'en': 'English',
'es': 'Español'
}
私のbase.html
{% for language in AVAILABLE_LANGUAGES.items() %}
{% if CURRENT_LANGUAGE == language[0] or (CURRENT_LANGUAGE == '' and BEST_MATCH_LANGUAGE == language[0]) %}
<li class="lang_active"><a name="language">{{ language[1] }}</a></li>
{% else %}
<li class="lang_inactive"><a href="?lang={{ language[0] }}">{{ language[1] }}</a></li>
{% endif %}
{% endfor %}
エラー
jinja2.exceptions.UndefinedError: 'AVAILABLE_LANGUAGES' は未定義です
ここにコードが表示されます