У меня есть модель контакта, и я хочу создать в ней только 1 запись с полем is_active = True. но я не хочу вызывать ошибку, я хочу, чтобы он уведомлял меня и не сохранял запись, если раньше на сайте администратора была запись контакта с is_active = True. «У контакта не может быть более 1 активного контакта одновременно.»
class Contact(models.Model):
name = models.CharField(max_length=30)
is_active = models.BooleanField(blank=True)
def save(self, *args, **kwargs):
if self.is_active:
if Contact.objects.filter(Q(is_active=True), ~Q(id=self.id)):
// raise ValidationError("Contact can't have more than 1 active contact at same time.")
return super(Contact, self).save(*args, **kwargs)