如何解决Django国际化不适用于我的项目
我阅读了文档,阅读了一些博客,并开始在项目中应用国际化,但这是行不通的。可能出了点问题。请看看我做错了什么。
我是Windows用户,因此我开始从this链接安装共享和静态的gettext版本。
然后我在settings.py
中进行了以下更改:
LANGUAGE_CODE = 'fr'
MIDDLEWARE = [
"django.middleware.locale.LocaleMiddleware",...
]
LOCALE_PATHS = [
os.path.join(BASE_DIR,'locale')
]
我已经将语言代码设置为法语。然后在我的模板index.html
中添加以下代码:
{% load i18n %}
<!-- within block content -->
{% trans "Hi" %}
现在一切都设置好了,我在控制台中运行以下代码:
django-admin makemessages -l fr
我收到此消息:
UnicodeDecodeError: skipped file requirements.txt in . (reason: 'utf-8' codec can't decode byte 0xff in position 0: invalid start byte)
processing locale fr
我不知道上述错误是否与翻译模板文本有关。无论如何,然后在语言环境目录中的django.po
中,我将模板文本翻译为法语,如下所示:
#: .\templates\index.html:29
msgid "Hi"
msgstr "Salut"
并运行django-admin compilemessages
,但是当我运行它时,文本不会翻译。不知道为什么我遵循了此基本设置的所有步骤。
感谢您的时间和阅读。
编辑:这是我项目的应用程序结构。除了拍摄萤幕撷取画面外,我不知道其他方法。翻译内容在index.html
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。