Как Django узнает, откуда он? - PullRequest
0 голосов
/ 20 мая 2010

Я читаю документацию по локализации Django: http://docs.djangoproject.com/en/dev/topics/i18n/localization/

Конечно, откуда пользователь определяет, какой «файл сообщений» использовать.

Как определить, откуда пользователь и что использовать? Делает ли это автоматически?

Ответы [ 2 ]

2 голосов
/ 20 мая 2010

Вы можете добавить Промежуточное программное обеспечение к вашим MIDDLEWARE_CLASSES в настройках, если вы хотите включить выбор языка на основе данных из запроса в Django.

Прочитайте , как Django обнаруживает языковые предпочтения , чтобы узнать детали.

Из документов

LocaleMiddleware пытается определить языковые предпочтения пользователя следуя этому алгоритму:

  • Сначала он ищет ключ django_language в текущем сеанс пользователя.

  • В противном случае он ищет печенье.

  • В противном случае он смотрит на HTTP-заголовок Accept-Language. это заголовок отправляется вашим браузером и сообщает серверу на каком языке вы предпочитаю, в порядке приоритета. Джанго пробует каждый язык в шапке пока он не найдет один с доступным переводы.

  • В противном случае используется глобальная настройка LANGUAGE_CODE.

0 голосов
/ 19 июля 2011

Выбор языка должен основываться не на местоположении пользователя, а на настройках браузера или явных настройках на странице, поскольку местоположение не определяет языки людей.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...