Для одной из моих моделей мне нужно обеспечить unicity некоторых строк, но только в определенном случае. Только «проверенные» строки должны следовать этому ограничению.Уникальное ограничение вместе с конкретным значением поля
В принципе, я с нетерпением жду что-то вроде
class MyModel(models.Model):
field_a = models.CharField()
field_b = models.CharField()
validated = models.BooleanField(default=False)
class Meta:
unique_together = (('field_a', 'field_b', 'validated=True'),)
с использованием 'unique_together' применяется на уровне db, выдавая инструкцию' UNIQUE' не на уровне django; он не похож (по крайней мере, mysql) поддерживает условный уникальный. Вы можете реализовать желаемое поведение на уровне приложения – dm03514