禁止将一个以上的模型实例保存到数据库(Django)?

时间:2020-01-31 14:04:59

标签: django django-models

我有一个Django模型,我想将它在数据库中的实例数量限制为1个。但是,我想允许编辑和更新1个实例。

我尝试使用@receiver信号在允许保存之前对实例数进行计数,但是如果我这样限制,它也不会让管理员编辑实例。

在信号发送器中是否可以区分创建动作和编辑动作?

@receiver(pre_save, sender=myModel)
def checkLimit(sender, **kwargs):
    count = sender.objects.count()
    if count > 1:
        raise PermissionDenied

0 个答案:

没有答案