更改“的名称”;“认证和授权”;Django/python中的菜单

更改“的名称”;“认证和授权”;Django/python中的菜单,python,django,admin,Python,Django,Admin,我正在学习python/Django并建立我的第一个项目。一切进展顺利,但我一直在疯狂地寻找一些非常简单的东西 有一个默认菜单项“身份验证和授权”,我想更改名称。我在模板中搜索了是否需要扩展某些内容,我搜索了是否有.po文件或其他文件,但我找不到它,也找不到关于应该在admin.py中覆盖哪个参数以设置它的提示 我不想安装多语言或高级本地化,只想更改一个菜单项的名称:) 有什么想法吗?这至少不能通过模板干净地完成 您可以将auth app详细名称“authentication and autho

我正在学习python/Django并建立我的第一个项目。一切进展顺利,但我一直在疯狂地寻找一些非常简单的东西

有一个默认菜单项“身份验证和授权”,我想更改名称。我在模板中搜索了是否需要扩展某些内容,我搜索了是否有
.po
文件或其他文件,但我找不到它,也找不到关于应该在
admin.py
中覆盖哪个参数以设置它的提示

我不想安装多语言或高级本地化,只想更改一个菜单项的名称:)


有什么想法吗?

这至少不能通过模板干净地完成

您可以将auth app详细名称“authentication and authorization”放在自己的.po文件中(翻译时遵循Django文档(&follow))
这样Django通常会使用你的名字

创建一个指向原始
django.auth
模块的自定义
AppConfig
,并覆盖
verbose\u name
。然后在
INSTALLED_APPS
中使用自定义的
AppConfig
,而不是原始的
auth
应用


如果您使用的是自定义区域设置(请参阅),那么最好的方法是将以下行添加到django.po文件中:

msgid "Authentication and Authorization"
msgstr "Your text for the auth app"
出于某种原因,许多本地化文件未能包含“身份验证和授权”字符串的翻译。这样添加(并使用上面链接中提到的compilemessages命令)应该可以正常工作。

要继续(Django 3.0):

在项目中的某个位置使用自定义AppConfig创建一个文件

# 'authconfig.py'
from django.apps import AppConfig

class CustomAuthConfig(AppConfig):
    name = 'django.contrib.auth'
    verbose_name = 'my super special auth name'
然后,在settings.py中:

INSTALLED_APPS = [
    ...
    #'django.contrib.auth', # comment out to avoid duplicate apps
    'authconfig.CustomAuthConfig', # add this in for custom config of auth module
    ...
]

你能告诉我们更多关于这种方法的细节吗?我使用了类似的方法,django迁移停止同步模型权限。