数据库保存的会话-添加新数据

时间:2019-10-04 11:54:55

标签: php database laravel session cookies

目前,我正在使用基于数据库的会话驱动程序,以允许我们在应用程序中存储一些持久性数据,

我们这样创建会话:

Auth::loginUsingId($user->id);

$payload = [
    'user_id' => $user->id,
    'lobby_id' => $user->room_id,
    'name' => $user->name,
    'host' => $user->host,
    'avatar' => $user->avatar
];

session()->put('user', $payload);
session()->save();
$session_id = session()->getId();

$cookie = cookie('app_cookie', $session_id, 86400 * 30, null, null, false, false);

我们使用创建的cookie来识别用户。

以上,当用户提交要添加到该当前会话的表单时,我们将创建初始会话。

所以我以为我可以做这样的事情,

session()->put('user.completed_forms', 'form-1');

我以为这会在数据库中添加一个新的键值对,它将被编码,然后有效载荷将在数据库中进行更新,但是,我看到使用新的行完全创建了新行ID。

我在做错什么,可以在不创建数据库新行的情况下更新数据库保存的会话有效负载吗?由于一个用户ID可能有数千行,并且我们在Cookie中使用了会话ID,因此也不想在每个服务器请求中都写入新的Cookie。

0 个答案:

没有答案