如何编写在管理员中可见的 Gerenic DeleteView 的修订版(Django Reversion)?
How to write a revision for Gerenic DeleteView visible in the admin (Django Reversion)?
在安装了Reversion 的Django Admin 中删除对象时,我可以查看所有已删除的对象。但是当我在我自己写的(通用)视图中删除它时,我看不到删除的对象。 (我正在使用上下文管理器。当我在通用视图中更新对象时,我可以看到历史记录的变化。)
我就是这样做的(所有 类 和方法都没有修改):
class ModelDelete(DeleteView):
def delete(self, request, *args, **kwargs):
with transaction.atomic(), reversion.create_revision():
reversion.set_user(request.user)
reversion.set_comment('Deleted')
return super(ModelDelete, self).delete(request, *args, **kwargs))
我正在使用 Django 1.7.10 和 Reversion 1.9.3。
我在文档中找不到如何执行此操作。我想念什么?我觉得挺简单的。
删除对象不会将其添加到修订中。在删除之前尝试保存对象。
with transaction.atomic(), reversion.create_revision():
obj = self.get_object()
obj.save() # save the object so it is added to the revision.
reversion.set_user(request.user)
reversion.set_comment('Deleted')
return super(ModelDelete, self).delete(request, *args, **kwargs))
在安装了Reversion 的Django Admin 中删除对象时,我可以查看所有已删除的对象。但是当我在我自己写的(通用)视图中删除它时,我看不到删除的对象。 (我正在使用上下文管理器。当我在通用视图中更新对象时,我可以看到历史记录的变化。)
我就是这样做的(所有 类 和方法都没有修改):
class ModelDelete(DeleteView):
def delete(self, request, *args, **kwargs):
with transaction.atomic(), reversion.create_revision():
reversion.set_user(request.user)
reversion.set_comment('Deleted')
return super(ModelDelete, self).delete(request, *args, **kwargs))
我正在使用 Django 1.7.10 和 Reversion 1.9.3。
我在文档中找不到如何执行此操作。我想念什么?我觉得挺简单的。
删除对象不会将其添加到修订中。在删除之前尝试保存对象。
with transaction.atomic(), reversion.create_revision():
obj = self.get_object()
obj.save() # save the object so it is added to the revision.
reversion.set_user(request.user)
reversion.set_comment('Deleted')
return super(ModelDelete, self).delete(request, *args, **kwargs))