Как обновлять модели с помощью прокси-таблицы inline?

У меня есть следующий код. Я использовал прокси-модель, потому что мне нужно было зарегистрировать ту же модель в админке. Я получаю сообщение: 'Please correct the error below.' без поля ошибки, и я не получаю никакого исключения. Я не могу отследить ошибку, поскольку в лог-файле ее нет. Я могу сохранить новую информацию, если таблица чиста, но я получаю эту ошибку, когда пытаюсь обновить информацию. Я думаю, что она пытается перезаписать родительскую модель, Laptop.

class Laptop(models.Model):
    _id = models.ObjectIdField()
    Type = models.CharField(max_length=30, unique=True)

    def __str__(self):
        return self.Name

    def save_model(self, request, *args, **kwargs):
        try:
            return super(Laptop, self).save_model(request, *args, **kwargs)
        except Exception as e:
            self.message_user(request, e, messages.ERROR)

class LaptopProxy(Laptop):
    class Meta:
        verbose_name = 'Info'
        proxy = True

    def save_model(self, request, *args, **kwargs):
        try:
            return super(LaptopProxy, self).save_model(request, *args, **kwargs)
        except Exception as e:
            self.message_user(request, e, messages.ERROR)

class InfoForm(InternalModelAdminMixin, admin.TabularInline):
      model = Info
      extra = 30
      
      def is_valid(self):
        log.debug(force_text(self.errors))
        return super(InfoForm, self).is_valid()

class InfoAdmin(InternalModelAdminMixin, admin.ModelAdmin):
      inlines = [InfoForm]

admin.site.register(Laptop, LaptopAdmin)
admin.site.register(LaptopProxy, InfoAdmin)

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