【问题标题】:Python - Django -Tastypie - How to run code after returningPython - Django -Tastypie - 返回后如何运行代码
【发布时间】:2018-02-08 06:47:38
【问题描述】:

对于下面的代码,return 语句似乎只在函数完成后执行

def runJob(objects,bgJob):
   """DO SOME DJANGO STUFF"
   try:
       return prepareResponce(status=202)
   finally:
       runJob(objects, bgJob)

基本上我需要在return语句之后执行runJob

【问题讨论】:

  • 那么你需要创建一个 celery 任务..

标签: python django tastypie


【解决方案1】:

这里的tastepie 或django 没有什么特别之处,这就是python 的工作原理。一旦你从函数返回值,它就会停止运行。

因此,您想要的方法是开始运行所谓的“后台”或“异步”任务,在向用户返回响应之前启动它。

这是众所周知且已解决的问题。工具集从休闲的tastypie-async 到经过战斗验证的重型生产就绪celery。后者与 django 社区中的 django + 巨大历史有很好的整合

【讨论】:

    猜你喜欢
    • 2010-12-01
    • 2017-09-11
    • 1970-01-01
    • 2021-03-31
    • 1970-01-01
    • 1970-01-01
    • 2020-09-11
    • 2011-07-23
    • 1970-01-01
    相关资源
    最近更新 更多