我们公司生成的报告通常使用双语言格式。例如:
English Test Name / Chinese Test Name: Result cm
我们已经设置了翻译,并且我已生成.po / .mo文件,并且可以毫无问题地使用单一语言。但是,有没有一种方法,使用内置的Django功能,来做双语选项。模板的当前格式
{% trans "Key" %}
在我们正在做的事情上留下了一些不足之处。也许
{% blocktrans %}
会更好吗?
我想在它上面抛出逻辑,想知道是否有办法使用
{% get_current_language as LANGUAGE_CODE %}
{% get_available_languages as LANGUAGES %}
获取所选语言,然后以某种方式操纵语言。
除了重写中间件之外的任何想法?
答案 0 :(得分:0)
我不知道如何在模板中执行此操作,但i18n python框架能够使用django.utils.translation.activate
激活语言以激活给定语言。简单地看一下trans和blocktrans的templatetags代码,看来没有为模板标签实现这样的东西,但是你可以编写自己的标签来包装trans和blocktrans,并允许你指定某种语言作为参数。