Интернационализация Django не работает, а DEBUG = True в приложении блога zinnia

Одна из тех вещей, которые нуждаются в некотором понимании внутренностей Джанго, которых мне все еще не хватает. Я тестирую приложение для блогов Zinnia ( http://django-blog-zinnia.com/). С DEBUG = False я получаю свой сайт без статических ресурсов (локально, это я могу понять), с DEBUG = True, это нормально со статическими, но переводы не работают, т.е. сайт не отображается на выбранном мной языке. Я использую стандартный сервер разработки (runserver). Зачем? Кто-нибудь так любезно объяснил?:)

Соответствующие части settings.py:

gettext = lambda s: s

DEBUG = True

LOCALE_PATHS = (os.path.join(os.path.dirname(__file__), 'locale'))

USE_I18N = True

LANGUAGE_CODE = 'pl'

DEFAULT_LANGUAGE = 1

LANGUAGES = (
    ('pl', gettext('Polish')),
    ('en', gettext('English')),
    ---snip--- )

1 ответ

Не уверен, что это источник вашей проблемы, но ваш LOCALE_PATHS настройка выглядит неправильно для меня. Предполагается, что это кортеж, а ваш - в виде строки. И это не абсолютный путь.

Попробуйте что-то вроде этого:

LOCALE_PATHS = (
   os.path.abspath(os.path.join(os.path.dirname(__file__), 'locale')),
)
Другие вопросы по тегам