自删除模型对象Django

时间:2013-01-03 04:10:28

标签: django

如何在模型对象初始化后60秒将其删除?我知道你可以覆盖delete()方法让它在实际删除对象之前休眠60秒。但是,如果我在视图中调用delete()方法。它会不会在继续之前最终停止视图60秒?

那么如何在不担心这些摊​​位的情况下做到这一点呢?

2 个答案:

答案 0 :(得分:3)

在模型中放置一个'to_be_deleted'booleanfield,并设置一个cron作业,每隔60秒运行一次,删除所有设置了标志的实例。

答案 1 :(得分:1)

可能是你可以开始新线程,等待60秒并删除该对象。所以视图不会被阻止。

另一种方法是使用异步任务管理器(如Celery)启动新任务,在60秒后删除对象。