Denis帮助您从django项目中恢复意外删除的数据
项目描述
Denis帮助您从django项目中恢复意外删除的数据。
理由
人类会犯错,有时他们会意外地从django管理中删除数据,您必须花下午时间从数据库转储中恢复数据。有时人叫Denis。
需求
Django >= 1.6
安装
pip安装 django-denis
用法
给定一个查询集,django-denis会找到django管理器将要删除的内容,并从备份数据库中恢复它们。
这里是一个示例会话
$ python manage.py shell >>> from denis import Denis >>> from django.contrib.auth.models import User >>> User.objects.filter(pk=40182) [] >>> qs = User.objects.using('backup').filter(pk=40182) >>> denis = Denis(qs, using='backup') >>> denis.recover(using='default') >>> User.objects.using('default').filter(pk=40182) <User: cicciopasticcio>
上面的代码假设在settings.py中的DATABASES有一个名为backup的配置条目,它应该指向一个包含您想要恢复的数据的数据库。
请谨慎操作
请始终在数据库副本上测试(并再次测试)恢复,以确保在生产数据库上操作之前一切正常。
当然,我们不对此代码承担责任。自行承担风险!