Django-all-auth:语言翻译不起作用

时间:2016-11-22 09:48:32

标签: django django-allauth

我是韩语并在我的django-all-auth项目中使用Django

我检查了.po中有韩文django-all-auth文件。

但所有表达都是英语,而不是韩语。

我只关注doc中的安装部分和配置部分。

这是我的settings.py

LANGUAGE_CODE = 'ko-kr'

TIME_ZONE = 'Asia/Seoul'

USE_I18N = True

USE_L10N = True

USE_TZ = True

我错过了什么吗?

1 个答案:

答案 0 :(得分:-1)

由于现在您的页面已配置为路由到所需的国际化,您现在需要自己提供本地化。它们不会自动翻译。你需要自己处理它。 为此,您必须使用

标记需要翻译的元素
from django.utils.translation import ugettext as _

现在使用ugettext as _按以下方式标记需要翻译的文字: -

class PollPluginPublisher(CMSPluginBase):
    model = PollPluginModel  # model where plugin data are saved
    module = _("Polls")
    name = _("Poll Plugin")  # name of the plugin in the interface

现在,在我们的案例中标记要翻译的元素("民意调查")和("民意调查插件")。 处理完此后,您可以在根目录中运行以下命令: -

django-admin makemessages -l de

替换最后一个" de"使用您的语言区域设置名称。这个命令的作用是它将创建一个po文件,它只存储需要翻译的元素。确保您的LOCALE_PATH设置正确。

完成此操作后,您可以使用以下django-packages进行翻译: -

1) django-rosetta :- https://django-rosetta.readthedocs.io/en/latest/

2) django-modeltranslation:- http://django-modeltranslation.readthedocs.io/en/latest/

有关LOCALIZATION的进一步参考,您可以查看: -

https://docs.djangoproject.com/en/1.10/topics/i18n/translation/#localization-how-to-create-language-files