Проблемы с i18n при использовании перевода django на App-Engine с корейским и хинди - PullRequest
2 голосов
/ 20 мая 2010

У меня есть настройки, основанные на посте здесь , и он отлично работает. Добавляя больше языков к смеси, он распознает их нормально, за исключением корейского (ко) и хинди (привет). С китайским / японским / ивритом все в порядке, так что я ничего не думаю о кодировках / кодировках.

Взглянув на код django в SDK движка приложения, я заметил, что все языки, которые я использую, кроме ko и hi, поставляются с django - в файле settings.py по умолчанию и в локали папки они отсутствуют. Если я скопирую одну из папок локали внутри /usr/local/google_appengine/lib/django[...]/conf/locale и переименую ее в «ko», то она начнет работать в моем приложении, но я выиграл » Я не смогу повторить эту модификацию при развертывании на app-engine, поэтому мне нужна помощь, чтобы понять, что я могу делать неправильно.

мой файл settings.py определенно принимается во внимание, как будто я удаляю языки оттуда, тогда они перестают работать (как они должны). Если я скопирую модули django в свое приложение, в разделе 'lib' там можно сказать, могу ли я использовать их вместо тех, которые пытается использовать app-engine, может быть?

Я новичок в python / django / app-engine и занимаюсь разработкой на Mac с Leopard, если это что-то меняет. Во вторник у меня последняя версия SDK для App Engine.

1 Ответ

3 голосов
/ 20 мая 2010

Полагаю, вы попали в перечисленное здесь «ограничение локали»: 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')
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...