这是字段集中的重复字段

use*_*178 4 django django-admin python-3.x

此类会引发系统检查 django 错误。它引发的具体错误如下所示。我查看了以前的帖子,这些帖子表明这是由于迁移到 django 2.1 并在字段元组末尾添加逗号而导致的错误。这对我不起作用。任何帮助将不胜感激。

SystemCheckError: System check identified some issues:
ERRORS:
<class 'app.admin.user.UserAdmin'>: (admin.E012) There are duplicate field(s) in 'fieldsets[1][1]'.
<class 'app.admin.user.UserAdmin'>: (admin.E012) There are duplicate field(s) in 'fieldsets[2][1]'.
<class 'app.admin.user.UserAdmin'>: (admin.E012) There are duplicate field(s) in 'fieldsets[3][1]'.

@register(User)
class UserAdmin(ModelAdmin):
    fieldsets = (
        (None, {'fields': ('email', 'password',)}),
        ('Personal info', {
            'fields': ('first_name', 'last_name', 'email',)}),
        ('Permissions', {'fields': ('is_active', 'is_staff', 'is_superuser',
                                       'groups', 'user_permissions',)}),
        ('Important dates', {'fields': ('last_login', 'date_joined',)})
    )
    add_fieldsets = (
        (None, {
            'classes': ('wide',),
            'fields': ('email', 'password1', 'password2',),
        }),
    )
    list_display = ('email', 'first_name', 'last_name', 'username', 'is_staff')
    list_filter = ('is_staff', 'is_superuser', 'is_active', 'groups',)
    search_fields = ('email', 'first_name', 'last_name',)
    ordering = ('email',)
    filter_horizontal = ('groups', 'user_permissions',)
Run Code Online (Sandbox Code Playgroud)

小智 5

我遇到了完全相同的错误,尽管“电子邮件”在每个元组中似乎都是唯一的,但它在“字段集”的所有元组中必须是唯一的。

(None, {'fields': ('email', 'password',)})

您是说“电子邮件”是一个基本字段,并且

('Personal info', { 'fields': ('first_name', 'last_name', 'email',)})

是说“电子邮件”是“个人信息”字段。你必须选择。

正如@ Selcuk建议的那样,删除第二个是解决方案。