Django фактически не использует параметры каскада базы данных даже для on_delete
on_delete не создает ограничение SQL в базе данных. Поддержка каскадных опций на уровне базы данных может быть реализована позже.
Ниже перечислены удобные преимущества, поскольку ваше приложение может реагировать на сигналы pre_delete
и post_delete
, но есть и небольшой недостаток в с точки зрения производительности
Что касается ON_UPDATE
Он не был реализован и использовался довольно редко, поскольку обычно вы никогда не меняете свой идентификатор модели
Вы все еще можете создайте SQL миграцию, если вам нужно что-то конкретное c на уровне базы данных или эмулируйте это на уровне приложения для лучшего контроля (например, переопределив метод сохранения модели)
Что касается дополнительных ограничений базы данных, не связанных с внешними key, есть связанные с ними документы здесь и укажите c до postgreSQL здесь