Laravel-显示缺少的内容

时间:2019-04-16 11:39:47

标签: php laravel

在Laravel应用程序中,我有UsersPosts。我想做的是检查用户注销时是否创建了任何帖子,然后显示类似于Twitter的消息“这里是您错过的内容”。

我当时正在考虑创建一个名为missed_content的表,其中包含用户ID,模型和模型ID,我将循环浏览给定用户并显示错过的内容。

因此,如果帖子的created_at日期晚于用户的last_login_at日期,则计划任务将查找新内容并将行添加到该表中。

然后,当用户登录时,我将显示内容并更新last_login_at

我担心的是,这是否可以扩展,就像一百万用户错过了20条帖子(即2000万条记录)一样。

1 个答案:

答案 0 :(得分:0)

为什么不最后一次登录用户。然后获取该日期之后发布的所有帖子?

$posts = Post::where('created_at', '<=', Auth::user()->last_sign_in)->get()

在刀片中您可以数数

<p>You have missed: {{ $posts->count() }} posts</p>

您不需要额外的桌子