首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >使用cookies的点赞功能

使用cookies的点赞功能
EN

Stack Overflow用户
提问于 2021-10-28 11:32:08
回答 1查看 39关注 0票数 0

假设我的模型中有一个like字段,现在我想使用Cookie实现添加like的功能。例如,我们有一个文章ID,我们签入cookies,如果没有数据,那么我们添加like并设置时间为10小时,以此类推,10小时过去了,我们检查并再次添加like并再次设置时间。如果数据已经存在,那么我们不会添加like,也不会更新时间。

有人能看到一些这样的例子吗?或者从哪里开始,如何实现它?

我读了文档,但不太明白它是如何工作的

让我们获得一个带有like字段的值

代码语言:javascript
运行
复制
$likes = Request::cookie('like');

选择时间

代码语言:javascript
运行
复制
$minutes = 600;

下一步是什么,我如何检查才能添加一个赞?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-10-28 13:18:55

如果您的updated_at列没有在update时自动更新(默认情况下可以这样做),那么您需要这样做,这样查询就可以在正确的更新时间过滤行。您可以使用Carbon进行简单的时间计算。

代码语言:javascript
运行
复制
 $likes = Request::cookie('like');
 $hours = 10;
    if($likes) {
        # Eloquent way
        Article::find($id)
            ->where('updated_at', '<', Carbon::now()->subHours($hours)->toDateTimeString())
            ->increment('like');
    }

如果您想使用Query Builder方式,请使用以下语法:

代码语言:javascript
运行
复制
# Query Builder way
DB::table('articles')
    ->where('id', $id)
    ->where('updated_at', '<', Carbon::now()->subHours($hours)->toDateTimeString())
    ->increment('like');

未测试。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/69753327

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档