我用文档中的说明建立了一个django项目,并有一个简单的任务:
@background
def test_task():
print("wtf")
然后,我在manage.py shell中运行了test_task((函数,该任务成功地添加到了数据库中(SQLite3(。然而,当我运行python manage.py process_tasks
时,什么也没发生。
至少可以说,这个模块不太受欢迎,所以直到5分钟前,我才在github上的模块存储库上找到任何问题的答案。我决定把这个贴在下面。
PS:我正在为这个项目运行Django 2.2
因此,我有理由确信问题在于模块发现任务的能力。解决方案是将任务的函数导入同一文件夹中另一个名为tasks.py的文件中。
内部任务.py:
from .views import test_task
函数被放置在tasks.py文件中,因为该文件是使用auto.discovery找到的,并试图将该文件放置在应用程序中视图.py可用的中
@backgrounddef test_task((:打印("wtf"(