Переопределение сохранения модели Django

Я хотел бы переопределить модель сохранения в Django, чтобы обеспечить проверку того, что мой пользователь не следует за самим собой. Я знаю, что могу сделать это с помощью сериализатора и поместить проверку в представление, но я хочу узнать, как переопределить def save.

class Followable(models.Model):
    user = models.OneToOneField(User, on_delete=models.CASCADE, null=True)
    followers = models.ManyToManyField(User, related_name="users", null=True, blank=True)

    class Meta:
        abstract = True
    
    def save(self, *args, **kwargs):
        if self.user != self.followers:
            return ValidationError("User cannot follow oneself.")
        
        super(Followable, self).save(*args, **kwargs)

Я пробовал выводить *args и **kwargs, но они пустые. Также, User - это моя пользовательская модель пользователя.

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