2014-11-23 62 views
0

我有一個定期任務,我每分鐘運行一次,但我無法弄清楚它爲什麼只更新第一次運行時更新的字段。當我改變了任務的第一個執行後的值,這不是變回0。這裏的任務:任務更新僅記錄在數據庫中

@shared_task 
class my_task(): 
    one_day_before = timezone.now() - datetime.timedelta(days=1) 
    User.objects.filter(status=1, created__lt=one_day_before).update(status=0) 

這裏就是我在芹菜工人產出的看到,當它運行:

[2014-11-23 14:38:34,213: INFO/MainProcess] Received task: users.tasks.my_task[fe16a6e9-0b2c-4099-9e95-29c8501d500a] 
[2014-11-23 14:38:34,216: INFO/MainProcess] Task users.tasks.my_task[fe16a6e9-0b2c-4099-9e95-29c8501d500a] succeeded in 0.00161398899945s: <users.tasks.my_task instance at 0x7fd54e12f1b8> 

那麼你能告訴我我錯在哪裏嗎?我無法讓它工作。

+0

在芹菜以外查詢工作正常。 – 2014-11-23 15:19:52

回答

0

嗯,我甚至不明白爲什麼我會犯這樣的錯誤。當然它必須被描述爲功能(不是類):

@shared_task 
def my_task(): 
    one_day_before = timezone.now() - datetime.timedelta(days=1) 
    User.objects.filter(status=1, created__lt=one_day_before).update(status=0) 
相關問題