【问题标题】:How to detect language with tag in Django CMS如何在 Django CMS 中使用标签检测语言
【发布时间】:2012-05-20 12:39:42
【问题描述】:

我正在设计主页,但有些词取决于实际主页的语言。 我想做这样的事情 {% 如果是英语 %} 你好 {% elif 法语 %} 你好 {% 别的 %} 布拉布拉 {% endif %}

django-cms 中是否有任何模板标签可以完成这项工作?谢谢

【问题讨论】:

    标签: django django-cms


    【解决方案1】:

    其实你想错了。 Django 在 Python 代码和模板中支持翻译。 Django Translation documentation 提供有关如何执行此操作的建议。

    你创建一个模板

    {% load i18n %}
    {% trans "Hello" %}
    

    设置完成后,“Hello”将被翻译成 bonjour。

    您需要在项目设置中激活 I18N,然后调用

    manage.py makemessages
    

    为您的项目创建一个 .po 文件。为 .po 文件创建翻译后,输入类似

    manage.py compilemessages
    

    实际的做事方式比这要困难一些,但在文档中有适当的描述。

    【讨论】:

    • 它似乎比我想象的要复杂,但是感谢您的遮阳篷!,我会研究文档
    • 备忘:您还需要将 django.middleware.locale.LocaleMiddleware 添加到您的设置中间件列表中,以便 django 检测用户语言并提供正确的翻译。
    猜你喜欢
    • 2014-12-05
    • 1970-01-01
    • 1970-01-01
    • 2013-07-31
    • 1970-01-01
    • 2014-07-05
    • 1970-01-01
    • 2012-03-24
    • 1970-01-01
    相关资源
    最近更新 更多