2

我正在尝试在 divio 平台上为 django-cms 站点添加多语言支持。我认为相关的divio 文档已经过时,因为侧边栏中不再存在“常规设置”链接以通过上面链接中所述的 divio Web 界面添加语言。相反,现在有一个“设置”链接,但那里没有语言字段。

divio界面截图

因此,我手动将以下内容添加到我的settings.py文件中:

from django.utils.translation import gettext_lazy as _

LANGUAGES = [
    ("en", _("English")),
    ("de", _("German")),
    ("es", _("Spanish")),
]

CMS_LANGUAGES = {
    1: [
        {"code": "en", "name": _("English"), "fallbacks": ["de", "es"], "public": True},
        {"code": "de", "name": _("German"), "fallbacks": ["en", "es"], "public": True},
        {"code": "es", "name": _("Spanish"), "fallbacks": ["en", "de"],
            "public": False,},
    ],
    "default": {
        "fallbacks": ["en", "de", "es"],
        "redirect_on_fallback": True,
        "public": True,
        "hide_untranslated": False,
    },
}

PARLER_LANGUAGES = {
    1: ({"code": "en"}, {"code": "de"}, {"code": "es"}),
    "default": {
        "fallbacks": ["en", "de", "es"],
        "hide_untranslated": False, 
    },

一切似乎都正常,但是 list_display 中的翻译列(在管理员中)存在一个小问题,当链接不是实际的翻译链接时,链接显示为字符串,如您在以下 aldryn-newsblog 文章的屏幕截图中所见列表:

aldryn-newsblog文章列表截图

在后台,这个 list_display 条目是由aldryn_translation_tools添加的,似乎由于某种原因,在 html 中附加了一个字符串而不是锚标记。如:

<td>
  "<a></a>"
</td>

代替:

<td>
  <a></a>
</td>

关于可能导致这种情况的任何想法?我的配置设置是否正确?

4

1 回答 1

1

感谢您指出过时的帮助文章,我们将对其进行更新。

语言设置现在位于 Aldryn Django 插件配置中:Addons > Aldryn Django

当然,您也可以使用您的语言设置settings.py

于 2019-09-04T08:09:47.620 回答