Как я могу добавить свой класс GroupAdmin к администратору без ошибок? - PullRequest
0 голосов
/ 10 февраля 2020

Вот мой admin.py файл:

from django.contrib import admin
from django.contrib.auth.admin import UserAdmin
from register.models import Account, ProgramGroup


class AccountAdmin(UserAdmin):
    list_display = ('email', 'user_id', 'date_joined', 'last_login', 'is_admin', 'is_staff')
    search_fields = ('email', 'user_id')
    readonly_fields = ('date_joined', 'last_login')

    filter_horizontal = ()
    list_filter = ()
    fieldsets = ()


class GroupAdmin(ProgramGroup):
    list_display = ('group_id', 'group_name', 'group_token')


admin.site.register(Account, AccountAdmin)
admin.site.register(ProgramGroup, GroupAdmin)

Однако, когда я пытаюсь выполнить миграцию, я получаю ошибку

path('%s/%s/' % (model._meta.app_label, model._meta.model_name), include(model_admin.urls)),
AttributeError: 'GroupAdmin' object has no attribute 'urls'

Если я избавляюсь от GroupAdmin или ProgramGroup в строке admin.site.register, он будет мигрировать, но тогда я не вижу элементов list_display в интерфейсе администратора. Как мне это исправить?

1 Ответ

0 голосов
/ 11 февраля 2020

Замените ProgramGroup на admin.ModelAdmin в определении вашего класса:

class GroupAdmin(admin.ModelAdmin):
    list_display = ('group_id', 'group_name', 'group_token')
...