给定以下模型,如何将可以创建的 ManyToMany 关系的数量限制为 Key 模型中的“count”值?
例如,如果“count”为 2,则只有 2 个设备可以使用该密钥。
楷模:
class Device(models.Model):
name = models.CharField(max_length=100, unique=True)
class Key(models.Model):
key = models.CharField(max_length=100, unique=True)
count = models.IntegerField(default=1)
device = models.ManyToManyField(Device, blank=True, null=True)
如果用户尝试将密钥添加到太多设备,或者如果他们将“计数”减少到少于已经使用该密钥的设备数量,我将需要引发异常。一个设备可以有任意数量的键。
(我正在使用管理站点进行数据输入)