如何在特定时间后自动更改Django模型字段?

问题描述

我正在一个包含拍卖过程的电子商务网站上。为此,我创建了具有不同状态选项的竞价模型:(例如:有效,已关闭,已取消,已完成等)。我想给用户固定的时间(例如5个小时)参加拍卖并添加出价,在此之后拍卖状态将自动从“有效”更改为“完成”,而用户将不会能够再提交出价,并确定中标者。

在Django中实现此目标的最佳方法是什么?我已经读过有关使用django-backgound-tasks或Celery等后台任务的信息。但这需要我每分钟左右运行一次任务,以检查5小时是否过去。

我遇到的其他事情是使用某种类型的计时器或Django信号。

我不确定这是最好的策略,因此正在征询社区的意见,谢谢!

解决方法

您可以使用periodic_task,它提供了更大的灵活性。