Django模型唯一约束异常

时间:2015-10-22 22:15:52

标签: python django django-models

我有一个django模型,它具有唯一的约束条件,但我需要一个特定的实例才能反复重复。这可能吗?

name = models.ForeignKey(name)
time = models.BigIntegerField()

class Meta:
    unique_together = ("name", "time",)

我正在尝试获取时间= 0并且为同一个用户多次。但是,在每个其他实例中,它的时间必须是唯一的。

1 个答案:

答案 0 :(得分:2)

在数据库级别验证unique_together字段(请参阅documentation)。因此不可能例外。

解决方案可以是设置time = null而不是time = 0。 您的数据库后端需要支持允许空值(see this post)的唯一约束。这是大多数主要DBMS支持的,但不是全部。

如果您的数据库不支持它,您将必须编写自定义表单验证。