Django: Модель не отображается на панели администратора

Это модель, которую я хочу показать на панели администратора. Я регистрирую модель через файл admin.py с помощью admin.site.register(Ad). Я попытался дважды переписать строку register, и появилось исключение, что модель уже зарегистрирована.

class Ad(AdModel):
    plate = models.CharField(max_length=50, unique=True)
    description = models.TextField(max_length=500)
    ad_type = models.CharField(
        max_length=255,
        choices=AdTypes.get_choices(),
        default=AdTypes.OFFERING,
    )
    price = models.PositiveIntegerField(
        default=0,
        help_text='In cents'
    )
    location = models.CharField(
        max_length=255,
        choices=AdLocations.get_choices(),
        default=AdLocations.VILNIUS,
    )
    user = models.ForeignKey(User, on_delete=models.PROTECT)

    approved_date = models.DateField(null=True, blank=True)
    approved_by = models.ForeignKey(
        User, on_delete=models.PROTECT, related_name='approved_by', null=True
    )

Две базовые модели:

class UUIDBaseModel(models.Model):
    created_at = models.DateTimeField(auto_now_add=True)
    updated_at = models.DateTimeField(auto_now=True)
    uuid = models.UUIDField(default=uuid.uuid4, editable=False, unique=True)

    class Meta:
        abstract = True

class AdModel(UUIDBaseModel):
    expires_at = models.DateTimeField(null=True)
    is_draft = models.BooleanField(default=False)
    is_active = models.BooleanField(default=False)

    class Meta:
        abstract = True

Это очень странно, может ли это быть проблемой из-за именования 'Ad'? У меня есть сериализатор для этой модели и все работает просто отлично, но админ панель не хочет ее отображать.

views.py

class AdCreateViewSet(ModelViewSet, CreateModelMixin):
    serializer_class = AdCreateSerializer
    permission_classes = (AllowAny,)
    filter_backends = [DjangoFilterBackend]
    search_fields = ('plate', 'description', 'user__email')
    queryset = Ad.objects.select_related('user')

    def perform_create(self, serializer):
        user = User.objects.first()
        serializer.save(user=user)  # self.request.user)

serializers.py

class AdCreateSerializer(CustomAdSerializer):
    class Meta:
        model = Ad
        exclude = ['expires_at']
        read_only_fields = ('user',)

enter image description here

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