0

我有以下删除方法,这在单独删除一条记录时有效,但在管理员中删除多条记录时无效,即通过列表视图,为什么以及如何修复?

def delete(self, *args, **kwargs):

        this = Profile.objects.get(id=self.id)
        this.image.delete(save=True)

        super(Profile, self).delete(*args, **kwargs)
4

2 回答 2

2

我建议使用signals删除您的相关图像,请查看文档pre_delete signal中的。

于 2013-03-01T17:18:18.250 回答
1

Django 文档实际上提到了您在管理操作中的确切情况:https ://docs.djangoproject.com/en/dev/ref/contrib/admin/actions/

或者,如果您想在其他地方使用,您可以考虑覆盖默认的 Manager 和 QuerySet 模型Model.objects.delete

于 2013-03-01T17:21:10.463 回答