2012-03-02 73 views
0

我的数据库中有很多记录显示在屏幕上。但是,记录是用户生成的,有时必须删除。每条记录都有一个show字段,该字段最初始终设置为true。当我们获得必须删除的内容时,人们会在Django管理界面中将其设置为false。发生这种情况时,我们需要将不良内容从屏幕上移除。所以我的问题是,在Django界面中,有什么方法可以告诉记录何时更新,并针对此更改做些什么?更新数据库在Django中更改时

+1

也许看看这个http://stackoverflow.com/a/5481930/1114171 – 2012-03-02 21:21:37

+0

那么,为什么不显示那些'show'字段设置为true的记录呢? – 2012-03-03 08:29:56

回答

2

你应该阅读有关signals

如何做这一点的想法:

from django.core.signals import post_save 
from django.dispatch import receiver 

@receiver(post_save, sender=MyModel) 
def my_handler(sender, instance, created, raw, **kwargs): 
    if created: # True for save, False for update 
     ... 

我认为这可以帮助你告诉当记录的更新,当你可以做的事情。

但是,如果用户看到记录不必刷新页面,以便隐藏记录,则可以使用websockets来接收信号发送的信息。或者您可以每隔20-30秒做一次Ajax请求来检查所有记录并发现哪一个被隐藏,或者您可以检查信号将填充的最新隐藏记录列表。

无论如何,有这样做的不同方式。

+0

感谢您的信息。这是哪个文件进去的? – Alexis 2012-03-02 22:20:00

+0

通常位于models.py – 2012-03-02 22:26:26