【发布时间】:2019-09-04 07:49:26
【问题描述】:
我正在尝试为 divio 平台上的 django-cms 站点添加多语言支持。我相信相关的divio docs 已经过时,因为侧边栏中不再存在“常规设置”链接以通过上面链接中描述的 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>
关于可能导致此问题的任何想法?我的配置设置正确吗?
【问题讨论】:
标签: django-cms django-i18n divio django-parler