【问题标题】:Can Django do further process after AJAX response?Django 可以在 AJAX 响应后做进一步的处理吗?
【发布时间】:2014-01-27 03:46:28
【问题描述】:

我正在开发一个处理 AJAX 请求的 Django 应用程序。代码是这样的:

def handler(request):
    # save the data to the database
    return HttpResponse(# some json)

问题是我想进一步处理用户提交的数据,但是在用成功信息响应用户之后。那么有没有办法在不使用 return 的情况下做出响应?或者有没有其他方法可以做到这一点?

【问题讨论】:

  • 我不知道如何在不使用return 的情况下返回HTTPResponse,但我想到了一个技巧。在您收到jsjquery 代码中的响应后,再次调用服务器ajax 并要求它开始处理数据,然后以不在@987654328 中的单独方法处理此数据处理@。您也可以使用handler 有一些注意事项;我的意思是您可以检查特定键是否在ajax 请求中,然后决定处理数据或响应ajax
  • 感谢泽纳布。好主意。

标签: python ajax django


【解决方案1】:

一般来说,您应该将 Celery 用于此类任务:它是异步处理的标准。 您可以在此处了解更多信息: Django with celery

【讨论】:

  • 谢谢,但实际上我将应用程序部署在云上,只支持纯 Python 代码。那么有没有更简单的方法来做到这一点(没有外部工具的原生 python)?
  • 不知道有没有可能,不过大部分python主机都提供了celery支持(openshift、gondor等)
猜你喜欢
  • 2010-12-03
  • 2016-01-20
  • 1970-01-01
  • 1970-01-01
  • 2013-09-28
  • 1970-01-01
  • 2018-12-16
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多