Можно ли сделать UniqueConstraint
, используя поле модели с иностранными ключами?
Например, как я могу заставить все книги, написанные авторами того же возраста, иметь уникальное название? ( Придуманный пример, но вы поняли идею. )
models.py :
class Author(models.Model):
name = models.CharField(max_length=100)
age = models.IntegerField()
class Book(models.Model):
class Meta:
contraints = [
models.UniqueConstraint(
# THIS DOESN'T WORK
fields=["author__age", "title"],
name="my_constraint",
)
]
title = models.CharField(max_length=100)
author = models.ForeignKey(Author, related_name="books")
Это дает следующую ошибку:
django .core.exceptions.FieldDoesNotExist: в книге нет поля с именем 'author__age
'