Я пытаюсь установить язык по умолчанию и только магазин для установки Satchmo 0.9.2 на голландский язык.
Я следую инструкциям по переводу контента :
Из каталога /home/myusername/webapps/myshop/lib/python2.7/Satchmo-0.9.2-py2.7.egg
я сгенерировал следующую команду для компиляции файлов голландского языка:
find . -name locale -exec sh -c 'cd $0 && cd ../ && python2.7
/home/myusername/webapps/myshop/lib/python2.7/django/bin/django-admin.py
makemessages -l nl -e html,txt,rml' {} \;
Теперь я вижу несколько файлов .../locale/nl/LC_MESSAGES/django.po
, которые содержат строки сообщений, переведенные на голландский язык.
В моем local_settings.py
файле определена переменная LOCALE_PATHS
:
LOCALE_PATHS = ""
Я скомпилировал файлы .po
в .mo
файлы с:
find . -name locale -exec sh -c 'cd $0 && cd ../ && python2.7
/home/myusername/webapps/myshop/lib/python2.7/django/bin/django-admin.py
compilemessages' {} \;
Я хочу толькотекст должен отображаться на голландском языке, поэтому мой local_settings.py
содержит только:
LANGUAGE_CODE = 'nl'
LANGUAGES = (
('nl', "Nederlands"),
)
Пользователи не должны иметь права выбирать другие переводы, поэтому allow_translation_choice
имеет значение False
в settings.py
:
L10N_SETTINGS = {
'currency_formats' : {
'EURO' : {'symbol': u'€', 'positive' : u"€%(val)0.2f", 'negative':
u"€(%(val)0.2f)",
'decimal' : ','},
},
'default_currency' : 'EURO',
'show_admin_translations': True,
'allow_translation_choice': False,
}
и в том же файле я включил свои URL-адреса i18n:
SATCHMO_SETTINGS = {
'SHOP_BASE' : '',
'MULTISHOP' : False,
'SHOP_URLS' : patterns('', (r'^i18n/', include('l10n.urls')),)
}
Чтобы убедиться, что в моих шаблонах используется правильный языковой код, я также добавил в settings.py
:
TEMPLATE_CONTEXT_PROCESSORS = (
'satchmo_store.shop.context_processors.settings',
'django.core.context_processors.auth',
'django.core.context_processors.i18n',
)
Прыгнув через все эти обручи, мой язык в магазине все еще отображается на английском и прочем.У вас будет «Изменить язык» с пустой раскрывающейся кнопкой в правом нижнем углу.
У кого-нибудь есть подсказка, где я ошибся?
Заранее спасибо.