我相信有一个简单的问题,但无论如何它都让我卡住了.
说我有一个简单的模型:
class myModel(models.Model):
expires = models.DateTimeField(...)
我希望,在指定的时间说一些事情:发送电子邮件,删除模型,更改一些模型字段……某事. django核心中有工具,允许我这样做吗?
或者,如果没有,我认为一些任务排队工具可能是有序的.我有djcelery在我的项目中工作,虽然我是一个完全新手,我到目前为止所能执行的只是运行django-celery-email包,以便异步发送我的邮件.虽然我不能说我完全有能力定义任务和工人在后台工作并且可靠.
如果有任何想法,关于如何解决这样的问题,请不要犹豫=)
最佳答案
我认为最好的是后台任务,读取datime并在达到或已达到日期时执行任务.
原文链接:https://www.f2er.com/python/439574.html请参阅此处给出的解决方案scheduled task
所以工作流程将是:
>创建要应用于已达到日期的对象的任务
>创建一个管理命令,检查数据库中的日期时间,并为达到日期时间的每个对象执行上述任务
>使用cron(Linux)或(Windows)安排命令调用