如何在django app中安装翻译“.po”?

时间:2011-09-07 12:25:34

标签: python django internationalization translation django-lfs

我几天前完成了为我的母语(pt_BR)创建Django-LFS(Lightning Fast Shop)的翻译文件。现在已经完成了,我需要安装我在Transifex完成翻译后下载的“.po”文件。

好的,我下载了这个文件,但现在我需要安装它,我只是想不通。我尝试将文件放在'lfs-installer'文件夹中,使用“bin / django compilemessages -a”,尝试了同样的事情,但文件在许多不同的文件夹中,但我无法让我的LFS使用我的翻译文件。 ..

有谁知道如何让翻译包在lfs上运行?或者我做错了什么?

由于

3 个答案:

答案 0 :(得分:1)

将.po文件放在路径中:

<your_django_project>/conf/locale/pt_BR/LC_MESSAGES/

然后跑 django-admin makemessages -a

答案 1 :(得分:0)

如果您还没有,请创建一个名为Locale的文件夹。然后在settings.py文件夹中,您必须告诉它在哪里找到区域设置路径。像这样:

LOCALE_PATHS{
C:/sdalfjasd/dfalsdjkf/locale
}

还要确保中间件中有区域设置中间件......

您可以有效地追踪这些语法和细节,现在我指出了正确的方向。

设置完这些内容后,您可以运行makemessage -a命令,该命令将在您的语言环境文件夹中为您输入的-a创建一个文件夹。然后您可以浏览到它,里面应该是.po文件(可能没有)。如果没有,只需将您制作的.po文件放在那里。

然后浏览您的CMD中的项目,并运行compilemessages -a。这应该将.po文件编译成.mo文件,翻译工作所需的文件。

希望我没有疯狂地离开......

答案 2 :(得分:0)

我使用以下设置使其工作:

import os
DIRNAME = os.path.dirname(__file__)

USE_I18N = True
USE_L10N = True

LANGUAGE_CODE = 'pt-br'
LANGUAGES = (
    ('pt-br', u"Português"),
)

LOCALE_PATHS = [
    DIRNAME + '/locale',
]

在settings.py文件夹旁边创建一个locale文件夹,然后按照Django官方说明进行操作。 django.po文件的所需路径为:locale/pt_BR/LC_MESSAGES/django.po。之后,使用compilemessages工具并重新启动服务器。

它应该有用。

提示: django-lfs使用locale模块来处理货币显示,但是语言环境模块存在一个错误,使其显示1234,00 R$而不是{{1 }}。如果它咬你,请将以下内容放入R$ 1234,00

settings.py
祝你好运。