Джанго перевод не работает на производстве - PullRequest
0 голосов

Я сделал перевод сайта для разных городов, и он отлично работает на машине разработчика.Но при публикации на рабочем сервере перевод не показывался.

Но он правильно отображал доступные языки и текущий язык.

Вот мои настройки.py:

USE_I18N = True
USE_L10N = True
LANGUAGES = [
    ('ru-spb', _('SaintP')),
    ('ru-msk', _('Moscow')),
]

LOCALE_PATHS = (
    os.path.join(BASE_DIR, 'nordicsite/locale'),
)

Вот шаблон для проверки языка:

 {% load i18n %}
 {% get_current_language as LANGUAGE_CODE %}
 {% get_available_languages as LANGUAGES %} 
 {% get_language_info_list for LANGUAGES as languages %}

 {{server}}<br/>
 {% trans 'Test 2' %}<br/>
 {{LANGUAGE_CODE}}<br/>
 {% for language in languages %}
     {{ language.name_local }} ({{ language.code }})<br/>
 {% endfor %}
 <br/>
 {% for path in paths %}
     {{path}}<br/>
 {% endfor %}

Вывод для dev:

Тест 1 Питер
Тест 2 Питер
ru-spb
Русский (ru) 
Русский (ru) 

/*****/nordicsite/locale

Вывод для производства:

Test 1
Test 2
ru-spb
Русский (ru) 
Русский (ru) 

/*****/nordicsite/locale

Что может быть не так?

1 Ответ

0 голосов

Наконец я понял, что случилось.Моя машинка для разработки - Mac, а производство - Ubuntu.И он не работал с поддельными языковыми кодами, такими как ru-spb и ru-msk.Я изменил его на ru-ru и ru-ua и начал работать правильно.

Еще одна вещь.Ubuntu нужна папка локали, чтобы быть ru_RU (не ru_ru).

...