多语言烧瓶应用

时间:2010-08-06 03:53:47

标签: python localization internationalization flask multilingual

是否有一种使Flask应用程序多语言的首选方法?理想情况下,该解决方案可以@app.route使用相同的视图为每种语言使用不同的网址,例如@app.route(en='/staff/', fr='/equipe/)。我非常有信心我可以一起破解这样的东西,但现有的图书馆肯定会节省我一些时间。感谢。

2 个答案:

答案 0 :(得分:18)

我相信Flask-Babel正是您所寻找的。

答案 1 :(得分:1)

您可以通过创建装饰器来决定使用哪个路由来实现这一目标。

def lang_route(en, fr, *args, **kwargs):
    # Find out the user's language
    lang = "en"
    if lang == "en":
        return app.route(en, *args, **kwargs)
    if lang == "fr":
        return app.route(fr, *args, **kwargs)


@lang_route(en="/staff", fr="/equipe")
def staff():
    return "staff"
相关问题