gpt4 book ai didi

python - Django - 使用 Celery 7 天后更新字段值

转载 作者:行者123 更新时间:2023-12-01 09:00:06 24 4
gpt4 key购买 nike

我今天的问题是如何使用 Celery 7 天后更改字段的值

我的模型:

class Episode(models.Model):
availability_free_users = models.DateTimeField(default=datetime.now()+timedelta(days=7))
availability = models.BooleanField(default=False)

因此,如果今天日期(仅日期而不是小时)=availability_free_users,我想将可用性更新为 true

最佳答案

首先,默认值不会达到您的预期。它将在加载时运行一次。您需要将其变成一个单独的函数,并将函数本身传递给默认值(lambda 在这里可以工作,但根据我所读到的内容,显然不推荐)。

就celery而言,可以设置celery beat任务运行(每天或任何适合您的目的),查询应标记为可用但尚未标记为可用的剧集,然后将它们标记为可用。

请注意,您可以完全使用一个查询集过滤器和更新链来完成此操作,但如果您这样做,则不会触发此模型上的任何信号。为此,您需要迭代查询集并将更改直接保存在每个模型上。

关于python - Django - 使用 Celery 7 天后更新字段值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52524996/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com