在我看来:
def delete_payment(request, id):
thePayment = Payment.objects.filter(id=id)
thePayment.delete()
return HttpResponseRedirect('/invoices/open/')
在我的模型中:
def delete(self, *args, **kwargs):
raise Exception('foo')
super(Payment, self).delete(*args, **kwargs)
我发现除非我从管理 View 中删除实例,否则不会引发异常。也就是说,如果我使用自己的 View ,则无法正确调用 delete()。
最佳答案
Manager.filter()
返回一个 QuerySet
,而不是一个 Model
。 QuerySet.delete()
不调用 Model.delete()
而是直接在数据库上操作。
关于python - 删除()一个实例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4300933/