如何在会话表中创建/更新user_id?

时间:2016-06-03 13:11:42

标签: php laravel session laravel-5.2

如何在Laravel 5.2中的user_id表中更新/创建sessions

所以我将会话存储在数据库中 - 这是迁移:

Schema::create('sessions', function ($table) {
    $table->string('id')->unique();
    $table->integer('user_id')->nullable();
    $table->string('ip_address', 45)->nullable();
    $table->text('user_agent')->nullable();
    $table->text('payload');
    $table->integer('last_activity');
});

每当用户使用我自己的身份验证登录时,我都会创建一个类似的会话:

$request->session()->put('user', ['name' =>' John', 'user_id' => 1 ]);

这不会在我的user_id表格中设置sessions,但我希望user_id表格中的sessions与我登录的用户对应&# 39; s id。因此,我可以通过sessions跟踪user_id表用户。

如何在user_id表中设置sessions

谢谢!

1 个答案:

答案 0 :(得分:0)

使用数据库进行会话。首先,您必须在.env文件集中

SESSION_DRIVER=database

然后你应该知道你的保存是在有效载荷中,而不是它保存你告诉的user_id。 user_id是Auth :: user() - > id,而不是您保存的内容

修改

如果你想改变laravel获取Auth :: user()的方式,你可能决定实现一个UserProvider(非常困难)