Для модели в model_or_iterable: TypeError: объект 'MediaDefiningClass' не является итерируемым

Я столкнулся с проблемой миграции этой модели и этого администратора

python manage.py makemigrations 

Возникает ошибка

for model in model_or_iterable:
TypeError: 'MediaDefiningClass' object is not iterable

это мой администратор

from django.contrib import admin
from django.contrib.auth.admin import UserAdmin
from django.contrib.auth.models import Group


from .models import User, Province


class MyUserAdmin(UserAdmin):
    fields = (
        (None, {'fields': ('username', 'password')}),
        'Personal info', {'fields': ('first_name', 'last_name', 'phone_number', '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': ('username', 'phone_number', 'password1', 'password2'),
        }),
    )
    list_display = ('username', 'phone_number', 'email', 'is_staff')
    search_fields = ('username_exact',)
    ordering = ('-id',)

    def get_search_results(self, request, queryset, search_term):
        queryset, my_have_duplicates = super().get_search_results(
            request, queryset, search_term
        )
        try:
            search_term_as_int = int(search_term)
        except ValueError:
            pass
        else:
            queryset |= self.model.objects.filter(phone_number=search_term_as_int)
        return queryset, my_have_duplicates

admin.site.unregister(Group)
admin.site.register(Province)
admin.site.register(User)
admin.site.register(MyUserAdmin)


Но программа столкнулась с ошибкой

    for model in model_or_iterable:
TypeError: 'MediaDefiningClass' object is not iterable

Попробуйте это :

admin.site.register(User, MyUserAdmin)

вместо

admin.site.register(User)
admin.site.register(MyUserAdmin)

MyUserAdmin - это не Модель, а 'MediaDefiningClass', поэтому он должен быть вторым аргументом в admin.site.register()

Вернуться на верх