Как я могу ограничить количество объектов, которые мы можем сохранить, с помощью условия и без условия в django?

Что имеется в виду, я хочу сохранить только один объект с полем is_featured true, если пользователь попытается сохранить другой объект с полем is_featured true, он должен выдать подсказку, Как я могу достичь этого в django, есть идеи?

class Event(BaseModel):
    title = models.CharField(max_length=200)
    time = models.TimeField()
    date = models.DateField()
    location = models.CharField(max_length=200)
    location_url = models.URLField()
    description = models.TextField()
    is_featured = models.BooleanField(default=False)
    image = VersatileImageField('Image', upload_to="web/events")

    class Meta:
        db_table = 'web_event'
        verbose_name = ('Event')
        verbose_name_plural = ('Event')
        ordering = ('auto_id',)

    def __str__(self):
        return str(self.title)

Вы можете добавить проверку, что если событие уже создано с is_featured true, то вы можете вернуть ошибку, иначе вы можете создать экземпляр

if Event.objects.filter(is_featured=True).exists():
   return Response({"error":"Featured Event Already Exists"})
else:
   Event.objects.create(**data)
```
Вернуться на верх