如何在页面上存储数据库使用Laravel刷新?

时间:2017-02-28 07:46:22

标签: php laravel

我想检查用户是否在使用该系统。

我知道有一个last_login,标准的laravel类是UpdateLastLoggedInAt。

public function handle(Login $event)
{
    $event->user->last_login = Carbon::now();
    $event->user->save();
}

如果用户让他们的浏览器窗口保持打开状态,则无效。

有没有办法让它在每个页面刷新或路由更改(用户浏览网站)时,将last_login更改为该时间?

提前致谢。

1 个答案:

答案 0 :(得分:0)

我为此创建了一个中间件,并将其包装在所有路径周围。

class LogLastSeen
{
/**
 * Handle an incoming request.
 *
 * @param  \Illuminate\Http\Request  $request
 * @param  \Closure  $next
 * @return mixed
 */
public function handle($request, Closure $next)
{
    $user = User::find(Auth()->user()->id);
    $user->last_login = Carbon::now();
    $user->save();
    return $next($request);
}