在我的settings.py
文件我有:
LANGUAGE_CODE = 'ru-RU'
还有,我已经安装和工作Django的管理工具。 但是,管理员仍语言英语。 我做错了吗?
PS。
$ cat settings.py | grep USE | grep -v USER
USE_I18N = True
USE_L10N = True
USE_TZ = True
在我的settings.py
文件我有:
LANGUAGE_CODE = 'ru-RU'
还有,我已经安装和工作Django的管理工具。 但是,管理员仍语言英语。 我做错了吗?
PS。
$ cat settings.py | grep USE | grep -v USER
USE_I18N = True
USE_L10N = True
USE_TZ = True
您需要专门设置语言管理应用。 由于Django不提供语言下拉作为默认登录的一部分,你有几种选择:
登录到您的正常(非管理员视图),具有超级用户/人员凭据和正确的语言,然后转移到管理URL。
更新管理模板,并添加一个语言下拉看到这个片段 。
创建一些自定义的中间件来设置语言管理:
from django.conf import settings from django.utils import translation class AdminLocaleMiddleware: def process_request(self, request): if request.path.startswith('/admin'): request.LANG = getattr(settings, 'ADMIN_LANGUAGE_CODE', settings.LANGUAGE_CODE) translation.activate(request.LANG) request.LANGUAGE_CODE = request.LANG
将它添加到您的MIDDLEWARE_CLASSES
MIDDLEWARE_CLASSES = { # ... 'foo.bar.AdminLocaleMiddleware', # ... }
设置要在管理员的语言settings.py
:
ADMIN_LANGUAGE_CODE = 'ru-RU'
检查您是否有翻译和本地化您启用settings.py
:
USE_I18N = True
USE_L10N = True
同时检查是否有翻译文件( .mo
, .po
)俄罗斯。