В первый раз пришлось делать мультиязычный сайт.
И я несколько запутан (оф. документация лишь усугубила дело).
В чем разница в локализации и интернационализации?
Как это делается?
Сейчас я на этапе, когда почти все строки в приложении обернуты в {% 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')
И перевод, к сожалению, не подхватился. Что я не сделал?