假设我有这个模型:
class UserBook(models.Model):
user = models.OneToOneField(User, on_delete=models.CASCADE, unique=True)
book = models.ForeignKey(Book, on_delete=models.PROTECT)
用户一次只能借一本书。如果用户被删除,我希望这个模型的实例也被删除,但我不希望它们被删除,如果一本书被删除(错误地,只是一个预防措施)。
使用上述约束删除用户时的预期行为是什么?我得到:
无法删除模型“UserBook”的某些实例,因为它们是通过受保护的外键引用的
有没有办法实现我想要的?我试图删除作为发件人的pre_save
/post_save
信号上的UserBook,User
但都没有奏效。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句