首页 > 解决方案 > 在指定时间后更改数据库中的数据

问题描述

在用户单击按钮后的一定时间内,我需要更改数据库中的一些数据。

例如,有一个sessions带有is_active(默认值0)字段和两个按钮的表。单击第一个按钮后,该字段必须相等15 分钟;单击第二个按钮字段后必须0立即相等。

首先,我认为队列或任务调度可能是解决方案,但我不明白它是如何工作的

Laravel甚至可以做到这一点吗?

标签: laravel

解决方案


是的,您可以借助数据库的一些帮助。您可以定义一次运行一次的计划,并且可以在用户单击按钮时将记录推送到数据库。然后在计划任务上,检查当时是否有任何任务需要运行,或者过去的时刻等。然后从数据库中删除任务。请注意,在下一个查询中,如果仍有作业正在运行,请在表中添加一个额外的标志,表明作业已开始,并且不要再次运行。


推荐阅读