Django ограничение для связанной модели
Всем привет! Возникла проблема с составлением ограничения для модели. У меня есть две модели Question(Описывает вопрос из теста) и Answer(Описывает ответы к Question). Answer имеет поле is_right (BooleanField), которое говорит о правильности или неправильности ответа. Так же Answer через ForeignKey ссылается на Question.
Вот упрощенный код:
class Question(models.Model):
...
class Meta:
constraints = []
class Answer(models.Model):
...
question = models.ForeignKey(Question, related_name='answers', on_delete=models.CASCADE)
is_right = models.BooleanField(default=False)
Я хочу сделать ограничение для модели Question, которое проверяет все связанные с вопросом(Question) ответы(Answer) на наличие хотя бы одного верного(is_right=True) и хотя бы одного неверного(is_right=False)
То есть нельзя будет сохранить вопрос у которого все варианты ответа правильные или неправильные.
Можно ли сделать такое с помощью django constraints или тут только сырой SQl?
Я использую django 4 и PostgreSQL 15
В документации к Constraints смог найти только примеры с проверкой полей самой модели на которой есть Constraint.