强制Django管理员以英文显示

ppp*_*p0h 3 django django-admin

我的网站不是英语,但我希望仅以英语显示Django管理员。

无论LANGUAGE_CODE设置如何,我如何强制Django管理员以英语显示?

ozr*_*983 5

据我所知,此功能没有开箱即用的设置,但是您可以轻松地在中间件中对其进行编码。将此代码添加到您的一个应用程序的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()
Run Code Online (Sandbox Code Playgroud)

在LocaleMiddleware之后将AdminLocaleMiddleware添加到您的设置中:

MIDDLEWARE_CLASSES = [
    ...
    "django.middleware.locale.LocaleMiddleware",
    "your_app.middleware.AdminLocaleMiddleware",
    ...
]
Run Code Online (Sandbox Code Playgroud)