【发布时间】:2010-11-03 14:48:16
【问题描述】:
我的一个具有ForeignKey 的模型实际上是其他表上的 MySQL 视图。我遇到的问题是,当我从这些表中删除数据时,Django,如"deleting objects" documentation...中所述。
当 Django 删除一个对象时,它 模拟 SQL 的行为 对 DELETE CASCADE 的约束——在 换句话说,任何具有 指向对象的外键 被删除将连同被删除 它。
...尝试从我的视图中删除行,这当然不能,因此会引发错误:
mysql_exceptions.OperationalError '>=(1395, "Can not delete from join view 'my_db.my_mysql_view'"'
有没有办法在模型上指定ForeignKey 约束,这将为我提供所有 Django 魔法,但不会级联删除?或者,有没有办法让 MySQL 忽略从我的视图中删除一行的命令而不是引发错误?
【问题讨论】:
标签: mysql django django-models