2016-04-23 38 views
3

我的網站不是英文版,但我希望Django管理員只能用英文顯示。強制Django管理員以英文顯示

如何強制Django管理員以英文顯示,而不管LANGUAGE_CODE設置如何?

+0

顯示一些代碼,看看到目前爲止你已經嘗試過的東西。 –

回答

3

據我所知,此功能沒有開箱即用的設置,但您可以輕鬆地將其編碼到中間件中。這個代碼到middleware.py文件添加到您的應用程序之一:

from django.utils import translation 

class AdminLocaleMiddleware(object): 

    def process_request(self, request): 
     if request.path.startswith('/admin'): 
      translation.activate("en") 
      request.LANGUAGE_CODE = translation.get_language() 

LocaleMiddleware後添加AdminLocaleMiddleware您的設置:

MIDDLEWARE_CLASSES = [ 
    ... 
    "django.middleware.locale.LocaleMiddleware", 
    "your_app.middleware.AdminLocaleMiddleware", 
    ... 
] 
+0

而不是使用'request.path',你也可以測試'request.resolver_match.app_name' – r3m0t