如何使用Laravel自动删除数据库记录?

时间:2017-08-25 15:17:13

标签: database laravel-5.4 laravel-eloquent

我有一个名为例如" posts"的表。 我需要的是自动从数据库中删除一个未更新1周的特定帖子记录。 实现它的最佳方法是什么?

1 个答案:

答案 0 :(得分:0)

查看队列 - https://laravel.com/docs/5.5/queues

您将每小时生成一个作业(例如),检查是否有任何updated_at时间戳大于一周的帖子。循环遍历这些并删除。

示例:

$stale_posts = Posts::where('updated_at', '<', Carbon::now()->subDays(7))->get();

foreach ($stale_posts as $post) {
    $post->delete();
}