我用的是Celery 和姜果Celery .我已经定义了一个我想要测试的周期性任务.是否可以从shell手动运行定期任务,以便我查看控制台输出?

推荐答案

您是否try 过仅从Django shell运行任务?您可以使用任务的.apply方法来确保它在本地Eager 地运行.

假设任务在Django应用程序myapptasks子模块中称为my_task:

$ python manage.py shell
>>> from myapp.tasks import my_task
>>> eager_result = my_task.apply()

结果实例的接口与通常的AsyncResult型相同,不同之处在于结果总是在本地Eager 地求值,.apply()方法将挡路直到任务运行完成.

Django相关问答推荐

Django中有修改字段值的挂钩吗?

在保存新实例之前删除一个实例(Django模型保存方法)

如何在Django中获取标记<;输入>;的';值';属性?

Django mods.py我想要一个函数转到一个变量

从Azure Web应用服务器上的cron任务的虚拟环境加载变量

- 不支持的操作数类型:DateField和DateField

如何根据查询集中的条件返回多个聚合?

Django 独立脚本

恢复 Django 1.7 RemoveField 迁移

Django REST Framework - 将额外参数传递给操作

Django删除查询集的最后五个以外的所有内容

在基于类的通用视图 CreateView 中访问 request.user 以便在 Django 中设置 FK 字段

如何在 Django 中向 ChoiceField 添加class?

virtualenv(python3.4), pip install mysqlclient 错误

base.html 中的 Django 变量

Django REST Framework - 序列化可选字段

'function' 对象没有属性 'as_view'

显式 cursor.close() 的必要性

将属性添加到 Django 模型的 Meta 类中

确保只有一个工作人员在运行多个工作人员的 pyramid 网络应用程序中启动 apscheduler 事件