Django Model中每个外键的唯一字段

时间:2013-05-20 16:45:38

标签: django django-models

我定义了一组模型,它们互相引用。它们是文档应用程序的模型,如下所示

class Document(models.Model):
    text = models.TextField()

class Chapter(models.Model):
    doc = models.ForeignKey('Document')
    chapter = models.IntegerField()

我希望整个字段对于每个文档都是唯一的,但我不知道如何这样做。我知道每个字段都有一个唯一的参数,但它似乎对整个表都是唯一的,这不是我想要的。

1 个答案:

答案 0 :(得分:15)

您可以在模型中使用唯一元素:meta:

class Chapter(models.Model):
    doc = models.ForeignKey('Document')
    chapter = models.IntegerField()

    class Meta:
        unique_together = (("doc", "chapter"),)  

这是doc