在我看来:
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)我发现,除非我从管理视图中删除实例,否则不会引发异常。也就是说,如果我使用自己的视图,就不能正确地调用delete()。
发布于 2010-11-29 12:54:49
Manager.filter()返回QuerySet,而不是Model。QuerySet.delete()不调用Model.delete(),而是直接在数据库上操作。
https://stackoverflow.com/questions/4300933
复制相似问题