2012-03-02 27 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