我正在尝试在 divio 平台上为 django-cms 站点添加多语言支持。我认为相关的divio 文档已经过时,因为侧边栏中不再存在“常规设置”链接以通过上面链接中所述的 divio Web 界面添加语言。相反,现在有一个“设置”链接,但那里没有语言字段。
因此,我手动将以下内容添加到我的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 文章的屏幕截图中所见列表:
在后台,这个 list_display 条目是由aldryn_translation_tools添加的,似乎由于某种原因,在 html 中附加了一个字符串而不是锚标记。如:
<td>
"<a></a>"
</td>
代替:
<td>
<a></a>
</td>
关于可能导致这种情况的任何想法?我的配置设置是否正确?