首页 > 解决方案 > 如何在特定时间后自动更改 Django 模型字段?

问题描述

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

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

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

我不确定哪个是最好的策略,因此我向社区征求意见,谢谢!

标签: djangotimermodeltasksignals

解决方案


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


推荐阅读