пятница, 30 октября 2009 г.

Сделать локализацию в зависимости от домена Django

Сделал я это через middleware.

from django.utils import translation
class I18NMiddleware(object):
def process_request(self, request):
host = request.get_host()
if host.find('domen1.org') != -1:
lang_code = 'en'
real_lang_code = 'en-US'
elif host.find('domen1.ru') != -1:
lang_code = 'ru'
real_lang_code = 'ru-RU'

translation.activate(real_lang_code)
request.LANGUAGE_CODE = lang_code

request.session['django_language'] = lang_code

def process_response(self, request, response):
response['Content-Language'] = request.LANGUAGE_CODE
translation.deactivate()
return response

В request указывается lang_code и в response задается content-type

Комментариев нет:

Отправить комментарий