2

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

好的,我下载了文件,但现在我需要安装它,我只是不知道如何。我尝试将文件放在“lfs-installer”文件夹中,使用“bin/django compilemessages -a”,尝试了同样的事情,但文件位于许多不同的文件夹中,但我不能让我的 LFS 使用我的翻译文件。 ..

有谁知道如何使翻译包在 lfs 上工作?还是我做错了什么?

谢谢

4

3 回答 3

1

把你的 .po 文件放在路径中:

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

并运行 django-admin makemessages -a

于 2011-09-07T14:10:15.853 回答
0

如果您还没有,请创建一个名为 Locale 的文件夹。然后在您的 settings.py 文件夹中,您必须告诉它在哪里可以找到语言环境路径。像这样的东西:

LOCALE_PATHS{
C:/sdalfjasd/dfalsdjkf/locale
}

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

既然我为您指明了正确的方向,您可能可以有效地追踪该语法和细节。

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

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

希望我没有在赛道上发疯……

于 2011-09-07T17:10:00.173 回答
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',
]

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

它应该工作。

提示: django-lfs 使用locale模块来处理货币显示,但是 locale 模块存在一个错误,使其显示1234,00 R$而不是R$ 1234,00. 如果它咬你,请将以下内容放入您的settings.py:

# Fix for LC_MONETARY bug: http://www.sourceware.org/bugzilla/show_bug.cgi?id=1294
import locale
locale._override_localeconv.update({'p_cs_precedes': 1, 'n_cs_precedes': 1})

祝你好运。

于 2013-02-23T19:40:20.317 回答