Как указать уникальность для кортежа поля в модели Django

Есть ли способ указать модель в Django, которая гарантирует, что пара полей уникальна в таблице, аналогично атрибуту "unique = True" для аналогичного поля?

Или мне нужно проверить это ограничение в методе clean()?

Ответы

Ответ 1

Существует опция META, называемая unique_together. Например:

class MyModel(models.Model):
    field1 = models.BlahField()
    field2 = models.FooField()
    field3 = models.BazField()

    class Meta:
        unique_together = ("field1", "field2")

Дополнительная информация на странице документации Django .