Django naturaltime本地化错误

时间:2014-06-06 11:45:40

标签: python django localization

我的语言ID是'id'。我使用本地化的人性化库来获取我的Django模板标签并使用naturaltime,但翻译部分错误。翻译为now的{​​{1}}是正确的。 sekarangseconddetikminute,但就menitdateweek而言,该字词未翻译为我的语言。它会一直打印monthsdateweek

这是我的Django配置

months

这里我是如何使用自然时间模板标签的。

TIME_ZONE = 'Asia/Jakarta'
LANGUAGE_CODE = 'id'
SITE_ID = 1
USE_I18N = True
USE_L10N = True
USE_TZ = True

我忘记了什么吗?谢谢。

2 个答案:

答案 0 :(得分:1)

不幸的是.../site-packages/django/contrib/humanize/locale/id/LC_MESSAGES/django.[mp]o gettext文件中缺少day = hari,week = minggu,month = bulan,year = tahun等的翻译。

您可以自己添加翻译。

答案 1 :(得分:0)

full-path-to../django/conf/locale/id/LC_MESSAGES/django.po上缺少翻译。

搜索要在该文件上翻译的周,月和任何其他字符串,然后在msgstr行进行翻译。例如,

#: utils/timesince.py:27
#, python-format
msgid "%d day"
msgid_plural "%d days"
msgstr[0] "%d hari"

之后,使用任何工具转换为django.mo(您可以使用http://po2mo.net等在线工具)。不要忘记重启django应用程序以查看更改。祝你好运。