Celery任务会创建一个新的模型对象,但是django信号不能提取它

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (1)
  • 关注 (0)
  • 查看 (21)

我已经读过并看到这与并发性有关,Celery不能编辑app变量,因为它与python应用程序位于不同的线程中。所以相反,我通过创建一个对象来修改数据库,希望django信号能够拾取它,但事实并非如此。我这样做是因为我需要知道后端是否发生了更新,因此SPA前端可以自动获取它。

提问于
用户回答回答于

Django信号只能在进程中工作。因此,对Celery进行模型改变将触发Celery中的信号。如果您需要通知单个页面应用程序(1)使用websocket或(2)通过SPA task_id,以便它可以轮询任务完成时间,然后采取必要的操作。

扫码关注云+社区

领取腾讯云代金券