我正在学习有关创建自定义用户以进行身份验证的教程。本教程使用了 UserAdmin 中的某个属性 add_fieldsets
。这是什么意思?我似乎找不到关于此的任何文档。
这是片段:
class UserAdmin(UserAdmin):
"""Define admin model for custom User model with no email field."""
fieldsets = (
(None, {'fields': ('email', 'password')}),
('Personal info', {'fields': ('first_name', 'last_name')}),
('Permissions', {'fields': ('is_active', 'is_staff', 'is_superuser', 'groups', 'user_permissions')}),
('Important dates', {'fields': ('last_login', 'date_joined')}),
('Contact info', {'fields': ('contact_no',)}),)
add_fieldsets = (
(None, {
'classes': ('wide',),
'fields': ('email', 'password1', 'password2'),}),)
list_display = ('email', 'first_name', 'last_name', 'is_staff')
search_fields = ('email', 'first_name', 'last_name')
ordering = ('email',)
这是我遵循的教程:How to use email as username for Django authentication (removing the username)
最佳答案
add_fieldsets
类变量用于定义将在创建用户页面上显示的字段。
不幸的是,它没有很好的记录,我发现最接近文档的是代码示例中关于 https://docs.djangoproject.com/en/2.1/topics/auth/customizing/ 的注释。 (搜索页面 add_fieldsets
)。
classes
键设置我们想要应用到表单部分的任何自定义 CSS 类。
fields
键设置您希望在表单中显示的字段。
在您的示例中,创建页面将允许您设置电子邮件
、password1
和password2
。
关于python - Django UserAdmin 的 add_fieldsets?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50436596/