我想对Django框架进行以下修改。Django - 逻辑删除
我希望它为我创建的每个模型创建一个“已删除”字段。
我希望它被检查为删除,当我从管理页面中删除它而不是物理删除。
我不希望检查这些记录被删除列出。
我是新来的Django,我看到我是否能够轻松地做我想做的事情。我需要这个改变,因为这是我们目前的工作方式。
到目前为止,这些都是我所做的改变,我想了解整个Django framewok是如何工作的,但是我离得很远,是否有任何在线文档可以清楚地解释内部框架零件/文件/模块/类一起工作,每一个的具体作用等
在base.py文件中,在模型库类,低于这个代码,
for obj_name, obj in attrs.items():
new_class.add_to_class(obj_name, obj)
我加入,
from django.db import models
new_class.add_to_class('deleted', models.BooleanField())
创建模型时,会向其添加“已删除”字段。
在base.py文件中,保存方法,我改变了它在那里的
self.deleted = True
self.save()
所以,现在检查作为删除的记录,而不是物理删除它。
现在我想要的是那些记录不被列出。
谢谢,正如我之前所说,我没有太多的框架知识,这很可能会有一个更好的解决方案,以添加该字段的问题。所以我可以创建一个带有删除字段的基类,并从中扩展我的模型,但我没有考虑到这一点,无论如何,这个想法总是以这种方式使用它,但是你是对的,如果你希望可能性更好创建基类而不是触摸框架源代码 – Pablo 2009-11-05 14:06:41