Задать вопрос

Как работать с локализацией в Django?

В первый раз пришлось делать мультиязычный сайт.
И я несколько запутан (оф. документация лишь усугубила дело).

В чем разница в локализации и интернационализации?

Как это делается?

Сейчас я на этапе, когда почти все строки в приложении обернуты в {% trans %} и ugettext_lazy. Что мне теперь делать?

Вроде нашел команду ./manage.py makemessages -l fr
Она создает файлы для переводов, которые нужно сначала перевести, а потом скомпилировать? А откуда брать коды языков?
Как Django решит, какую локализацию подсовывать? Как управлять ею вручную?

В доках как-то написано... Что надо делать, а вот зачем и и как потом с этим жить...
Может есть где более подробное описание процесса?

UPD.
Продолжил поиски. И ничего не работает. Как переключить локализацию я так и не нашел. Пошел в шелл - в доках был пример.
./manage.py makemessages -l fr
Перевел пару фраз.
./manage.py compilemessages
И в шеле:
from django.utils.translation import activate
activate('fr')
from django.utils.translation import ugettext
ugettext('Discussions')

И перевод, к сожалению, не подхватился. Что я не сделал?
  • Вопрос задан
  • 2878 просмотров
Подписаться 5 Оценить Комментировать
Пригласить эксперта
Ответы на вопрос 1
Папка с локалями где лежит?
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы