我的网站不是英语,但我希望Django管理只能用英语显示。
无论LANGUAGE_CODE
设置如何,我如何强制Django管理员以英语显示?
发布于 2016-04-23 15:20:24
据我所知,此功能没有开箱即用的设置,但您可以轻松地在中间件中对其进行编码。将此代码添加到一个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()
将AdminLocaleMiddleware添加到LocaleMiddleware之后的设置中:
MIDDLEWARE_CLASSES = [
...
"django.middleware.locale.LocaleMiddleware",
"your_app.middleware.AdminLocaleMiddleware",
...
]
发布于 2018-05-13 19:41:44
对于Django 2.0:
from django.utils import translation
class AdminLocaleMiddleware:
def __init__(self, process_request):
self.process_request = process_request
def __call__(self, request):
if request.path.startswith('/admin'):
translation.activate("en")
request.LANGUAGE_CODE = translation.get_language()
response = self.process_request(request)
return response
https://stackoverflow.com/questions/36809492
复制相似问题