1. 程式人生 > >Zhong__[23000][1451] Cannot delete or update a parent row: a foreign key constraint fails

Zhong__[23000][1451] Cannot delete or update a parent row: a foreign key constraint fails

通過django建立了一對多的models類  生成了MySQL表  

在模型中也定義了models.ForeignKey(Your table name,on_delete=models.CASCADE)

在主表中刪除有關聯的資料時報錯:

[23000][1451] Cannot delete or update a parent row: a foreign key constraint fails

經過認真思考並測試之後  明白了原因  不是on_delete=models.CASCADE未生效  而是直接操作的MySQL資料庫  沒有通過model操作其實就是直接操作資料庫  on_delete=models.CASCADE也就不生效了  那麼通過model操作刪除資料時關聯的表資料也會刪除  所以問題在這裡  通過django  models建立的資料庫如果是一對多的關係型資料庫  那麼也要通過django  model操作資料庫才會有期望效果  。。。