使用Rest框架发送响应后执行Django模型操作

时间:2019-06-29 09:21:56

标签: django django-rest-framework

我用文章和评论创建了一个非常简单的设置,用户可以通过Django Rest框架创建的api将评论发布到文章。

到目前为止,一切都很好。问题是创建注释时我需要执行一些昂贵的操作(例如发送电子邮件通知),但是我希望在响应返回后执行它们,因此用户不必等待

class Comment(CommentBase):
article = models.ForeignKey(Article, on_delete=models.CASCADE)

def save(self, *args, **kwargs):
    #Expensive operations here, which should run after a response has been returned.
    super(Comment, self).save(*args, **kwargs)

据我所知,其余的框架要等到执行了模型保存后才发送响应。

如何在返回响应后最好地运行操作?我可以使用后信号,还是与Celery有关?

0 个答案:

没有答案