我练习django-celery
settings.py
#import datetime
#CELERYBEAT_SCHEDULE = {
# 'hello_task': {
# 'task': 'hello_task',
# 'schedule': datetime.timedelta(seconds=20),
# },
#}
import datetime
CELERYBEAT_SCHEDULE = {
'add-every-30-seconds': {
'task': 'app1.tasks.myfunc',
'schedule': datetime.timedelta(seconds=30),
},
}
我首先尝试hello_task
时间表,然后我对其进行评论并尝试add-every-30-seconds
但它仍然希望在hello_task
时间到来时执行
所以我检查了数据库,发现它保存了记录
为什么我评论它时不会删除? 是否有任何命令或正常的方法来删除它?
或者如果我只是从数据库删除它很好?
答案 0 :(得分:1)
如果您正在使用django-celery
数据库调度程序,CELERYBEAT_SCHEDULE
dict中的那些定期任务将被添加到Django的数据库中,如您所知。然后,django-celery的调度程序主要从数据库中读取其设置。从dict中删除条目只意味着django-celery
无法添加到数据库中。
要正确删除任务,请将其从Django管理页面(Djcelery>定期任务)中删除。
答案 1 :(得分:0)
当您更改芹菜正在使用的代码时,您应该重新启动芹菜以了解更改。比如每当你改变你的python代码时都需要重启django服务器。