使用韩语和印地语在App-Engine上使用django翻译的i18n问题

时间:2010-05-20 17:58:20

标签: python django google-app-engine internationalization

我有一个基于post here的设置,它完美无缺。添加更多语言,除了韩语(ko)和印地语(hi)之外,它可以很好地识别它们。中文/日文/希伯来文都很好,所以与我不认为的编码/字符集无关。

看一下app-engine SDK里面的django代码,我注意到除了ko和hi之外我使用的所有语言都是随django一起提供的 - 在默认的settings.py和locale里面他们缺少的文件夹。如果我复制/usr/local/google_appengine/lib/django(...]/conf/locale)中的一个区域设置文件夹并将其重命名为'ko',那么它将在我的应用中开始工作,但我赢了'当我部署到app-engine时能够复制这个修改,所以需要一些帮助来理解我可能做错了什么。

我的settings.py肯定会被考虑在内,好像我从那里删除语言然后他们就会停止工作(正如他们应该的那样)。如果我将django模块复制到我的应用程序中,在“lib”下面说,我可以使用那些而不是app-engine尝试使用的那些,可能吗?

我是python / django / app-engine的新手,并且在使用Leopard的Mac上进行开发,如果这有任何区别的话。截至星期二,我有最新的app-engine SDK。

1 个答案:

答案 0 :(得分:3)

我的猜测是你正在点击此处列出的'locale restriction':http://docs.djangoproject.com/en/dev/topics/i18n/localization/#id1由于0.96没有这些语言的Django翻译,Django不允许你翻译你的应用程序。

我认为使用django 1.1可能最容易,它确实有这些语言的翻译。您可能需要通过代码的其他部分来修复0.96和1.1之间的任何向后不兼容性。

要使用Django 1.1,您可以按照此处的说明操作:http://code.google.com/intl/en-US/appengine/docs/python/tools/libraries.html#Django

是:

import os
os.environ['DJANGO_SETTINGS_MODULE'] = 'settings'
from google.appengine.dist import use_library
use_library('django', '1.1')