我尝试用“babel”翻译我的网络应用程序,但遇到了错误:“AttributeError:“Babel”对象没有属性“localeselector””我使用 python 3.11.1 和 Babel 2.11.0 这是与问题。
from flask_babel import Babel, get_locale, gettext
@babel.localeselector
def determine_locale():
if 'language' in session:
return session['language']
return request.accept_languages.best_match(['en', 'es'])
Run Code Online (Sandbox Code Playgroud)
我使用命令 promt 成功创建了所有文件,例如(messages.pot、messages.po 和 messages.mo)。我认为我对装饰器本身了解甚少,并且不知道在哪里寻找解决方案。
我尝试使用不同的方式导入 localeselector,并从使用它的人那里阅读了很多示例。但仍然不明白我错过了什么步骤。
Imr*_*23A 11
@babel.localeselectorFlask在我的和版本中不起作用flask_babel。改用init_app:
babel.init_app(app, locale_selector=get_locale)
Run Code Online (Sandbox Code Playgroud)
并确保您get_locale()在此调用之前定义了 func
另请参阅Flask-Babel:get_locale() 似乎不起作用
| 归档时间: |
|
| 查看次数: |
4702 次 |
| 最近记录: |