Добавьте CheckConstraint для поля связанного объекта в моделях Django.Python

Программы на Python
Ответить
Anonymous
 Добавьте CheckConstraint для поля связанного объекта в моделях Django.

Сообщение Anonymous »

У меня есть две модели Django:

Код: Выделить всё

class A(models.Model):
is_pure = models.BooleanField()

class B(models.Model):
a = models.ForeignKey(A, on_delete=models.CASCADE)

class Meta:
constraints = [
models.CheckConstraint(
check=models.Q(a__is_pure=True),
name="a_is_pure"
)
]
Я хочу добавить ограничение, согласно которому ни один экземпляр B не может иметь ссылку на экземпляр A, поле is_pure которого имеет значение False.
Когда я добавляю приведенный выше код , выполнить миграцию и попытаться выполнить миграцию, я получаю эту ошибку:

Код: Выделить всё

(models.E041) 'constraints' refers to the joined field 'a__is_pure'.
Поддерживает ли Django такое в настоящее время? Если нет, что посоветуете?

Подробнее здесь: https://stackoverflow.com/questions/674 ... ngo-models
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Python»