13

Celery 任务如何访问 Django 数据库抽象 API?这是否需要使用独立 Django ORM 使用的策略之一从头开始编码,或者是否有更简化的内置方式或常见做法?

似乎没有人问这个问题。但是,对我来说,这是基本的。

这个例子暗示这没什么大不了的,但是有人能解释一下 Celery 和 Django 之间的会话管理和 ORM 范围是如何工作的吗?

4

2 回答 2

6

默认情况下,Celery 腌制其任务参数。Django 模型实例也可以腌制。

问题是酸洗模型实例就像在那个时候拍摄它的快照。Unpickling 不会触及数据库。

我想这是好是坏取决于您的需求。我倾向于将主键发送到我的任务中并重新查询有问题的对象。

于 2012-08-13T22:16:30.403 回答
0

你可能想看看django-celery

当作为 celery 任务进行工作时,您希望将所有详细信息传递给 celery,例如发送电子邮件,您将传递“from”、“to”、“subject”和“body”的值。

如果您想通知用户操作已完成,您可能想看看Django 中的消息框架之类的东西。

我希望这会有所帮助。

于 2011-07-18T15:16:14.310 回答