django翻译不是由django-rosetta工作

时间:2011-06-10 12:47:17

标签: django translation rosetta

我已经安装了django-rosetta进行翻译,通过django命令制作.po和.mo文件

  

django-admin.py makemessages -l ar

并通过django-rosetta翻译所有单词,

现在,当我将我的语言从英语改为阿拉伯语时,它会显示一些阿拉伯语和一些英语的单词,尽管我用阿拉伯语翻译了所有这些单词,

谁能帮助我吗?我调试但无法找到问题所在:(

任何形式的帮助将不胜感激!

3 个答案:

答案 0 :(得分:1)

你重启了网络服务器吗?

  

这意味着您的项目标签将立即被翻译,遗憾的是您仍然需要重新启动网络服务器才能使更改生效。 (新:如果您的网络服务器支持它,您可以在保存更改时强制自动重新加载已翻译的目录。请参阅conf / settings.py中有关ROSETTA_WSGI_AUTO_RELOAD变量的说明。

- http://code.google.com/p/django-rosetta/

答案 1 :(得分:1)

你在运行什么样的服务器?

我遇到了与Apache2和FastCGI相同的问题。我不得不重新启动FastCGI流程以查看修改。

您是否已将本地路径正确添加到您的设置中?

PROJECT_PATH = os.path.split(os.path.abspath(os.path.dirname(__file__)))[0]
LOCALE_PATHS = (
    os.path.join(PROJECT_PATH, "locale"),
)

答案 2 :(得分:0)

您的翻译是否标记为模糊? (在Rosetta中,您可以过滤以仅显示模糊翻译。)如果某些字符串模糊,请确保它们已正确翻译,取消选中模糊标记并保存翻译。

翻译未显示的另一个原因可能是某些python格式化字符串(例如“我的%s苹果”)未在翻译的字符串中正确再现。如果格式代码不平衡,Rosetta应该警告您,并且实际的翻译不会写入文件。