Рассмотрите возможность использования промежуточного программного обеспечения, которое переопределяет локаль для определенных URL-адресов. Вот грубый пример:
Джанго 1,9 и ранее:
from django.conf import settings
from django.utils.translation import activate
import re
class ForceInEnglish(object):
def process_request(self, request):
if re.match(".*admin/", request.path):
activate("en")
else:
activate(settings.LANGUAGE_CODE)
Это просто идея реализации.
Джанго 1.10 +:
from django.conf import settings
from django.utils import translation
class ForceInEnglish:
def __init__(self, get_response):
self.get_response = get_response
def __call__(self, request):
if request.path.startswith('/admin'):
request.LANG = 'en'
translation.activate(request.LANG)
request.LANGUAGE_CODE = request.LANG
return self.get_response(request)
Как подать заявку?
Сохранить в файл middleware.py и включить в файл настроек MIDDLEWARE_CLASSES (1.9 и более ранние версии) или MIDDLEWARE (1.10+).