Как показывает ошибка, вам нужно указать, что должно произойти, если объект, на который вы ссылаетесь, удаляется параметром on_delete=
[Django-doc] . Например:
CASCADE
Каскад удаляет. Django эмулирует поведение ограничения SQL
ON DELETE CASCADE
, а также удаляет объект, содержащий
ForeignKey
.
Model.delete()
не вызывается на связанных моделях, но pre_delete
и post_delete
сигналы отправляются для всех удаленных объектов.
PROTECT
Предотвратить удаление объекта, на который есть ссылка, подняв ProtectedError
,
подкласс django.db.IntegrityError
.
SET_NULL
Установить ForeignKey
ноль; это возможно, только если null
равно True
.
SET_DEFAULT
Установите ForeignKey
в значение default
; по умолчанию для
ForeignKey
должен быть установлен.
SET()
Установите для ForeignKey
значение, переданное в SET()
, или если оно вызывается
передается, результат вызова. В большинстве случаев, передавая
вызываемый будет необходимо, чтобы избежать выполнения запросов во время вашего
models.py
импортируется (...)
DO_NOTHING
Не предпринимать никаких действий. Если ваша база данных использует ссылочный
целостности, это приведет к IntegrityError
, если вы не добавите вручную
SQL ON DELETE
ограничение для поля базы данных.