如何根据 Laravel 现有数据库中“login_at”列的月份输入填充表列

问题描述

我有一个已经填充的现有数据库。我创建了一个新列来存储填充数据的月份。

如何使用基于每行的 login_at 列的数据填充“月份”列?

enter image description here

我可以像这样根据当前月份填充当前输入

$login_time = Login::create(['user_id'=> auth('user')->user()->id,'session_id' => session()->getId(),'login_at' => Carbon::Now()->toDateTimeString(),'login_ip'=> $request->getClientIp(),'is_active'=> true,'month'=> Now()->month ]);

但是我无法在一个月内填充之前的其他单元格。如何填充此列。

enter image description here

解决方法

您可以执行以下操作:

Login::get()->each(function ($l) { 
   $l->month = \Carbon\Carbon::parse($l->login_at)->format('m');
   $l->save();
})