2012-01-04 108 views
2

说我不小心删除了django中的django.contrib.auth.models.User条目,它级联删除了所有受影响的行。Django - 帮助恢复意外删除的用户

我需要做些什么来从备份恢复该用户?

我假设的步骤将是:

  1. 加载一个单独的机器上的备份从备份
  2. 确定受级联的行删除Auth用户的
  3. 复制的行在单独的机器上连接到受影响的机器上

可以使用什么工具/脚本来执行步骤2和3?我是否需要编写自己的或者是否有内置的实用程序,可能有所帮助?

回答

2

恢复数据库并输入/admin/。请转至User型号并尝试删除同一用户。管理员应询问您是否确定,并向您显示其他对象级联后将被删除的信息。这是你可以轻松地免费获得,并且免费在Django

+0

同意,但正在寻找一种方法在shell中获取相同的信息? – user749618 2012-01-04 17:43:31

+1

我不知道,如果有壳类似的能力。 – gruszczy 2012-01-04 18:05:11

2

管理应用程序使用get_deleted_objects函数django.contrib.admin.util来查找相关对象。

在shell中,你可以导入这个函数。然而,理解所需的参数需要一些工作。 @gruszczy在他的回答中暗示,使用管理网站可能会更简单。