Php Laravel 5.3柜台访客页面

Php Laravel 5.3柜台访客页面,php,laravel,Php,Laravel,我正在网站上做一个计数器页面 这是我的控制器后控制器: public function show(Post $post) { $post->increment('view_count'); return view("site.show", compact('post')); } 这是我的RouteService提供商: public function boot() { parent::boot();

我正在网站上做一个计数器页面

这是我的控制器后控制器:

public function show(Post $post)
    {
        $post->increment('view_count');

        return view("site.show", compact('post'));
    }
这是我的RouteService提供商:

public function boot()
    {
        parent::boot();

        Route::bind('post', function ($slug) {
            return Post::published()->where('slug', $slug)->first();
        });
    }

这段代码正在工作,但我有一个问题,每次我刷新页面时,我的帖子选项卡中的字段(“查看次数”)总是递增,问题是如何限制同一访问者执行相同的操作,如刷新页面等,提前感谢你可以在会话中保留一组帖子ID,在进行查询之前检查他是否已经看到了它。如果要使这些时间戳无效,还可以存储视图的时间戳

public function show(Post $post)
    {
        $ids = Session::get('ids') ? Session::get('ids') : [];
        if (!in_array($post->id, $ids)) {
          $post->increment('view_count');
          $ids[] = $post->id;
          Session::put('ids', $ids);
        }
        return view("site.show", compact('post'));
    }