加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Python > 正文

python – Django按照模型datetime字段中指定的时间执行任务

发布时间:2020-12-16 21:48:40 所属栏目:Python 来源:网络整理
导读:我相信有一个简单的问题,但无论如何它都让我卡住了. 说我有一个简单的模型: class myModel(models.Model): expires = models.DateTimeField(...) 我希望,在指定的时间说一些事情:发送电子邮件,删除模型,更改一些模型字段某事. django核心中有工具,允许我这

我相信有一个简单的问题,但无论如何它都让我卡住了.

说我有一个简单的模型:

class myModel(models.Model):
    expires = models.DateTimeField(...)

我希望,在指定的时间说一些事情:发送电子邮件,删除模型,更改一些模型字段……某事. django核心中有工具,允许我这样做吗?

或者,如果没有,我认为一些任务排队工具可能是有序的.我有djcelery在我的项目中工作,虽然我是一个完全新手,我到目前为止所能执行的只是运行django-celery-email包,以便异步发送我的邮件.虽然我不能说我完全有能力定义任务和工人在后台工作并且可靠.

如果有任何想法,关于如何解决这样的问题,请不要犹豫=)

最佳答案
我认为最好的是后台任务,读取datime并在达到或已达到日期时执行任务.

请参阅此处给出的解决方案scheduled task

所以工作流程将是:

>创建要应用于已达到日期的对象的任务
>创建一个管理命令,检查数据库中的日期时间,并为达到日期时间的每个对象执行上述任务
>使用cron(Linux)或(Windows)安排命令调用

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读