我需要从其他数据库导入数据并将其传输到新数据库。但是关系需要成员的身份信息。我也要带它们。 因此,我必须填写ID列,该列增加为AUTOINCREMENT。
我的迁移控制器
public function migrate(BackupUser $buser, User $user)
{
$backup_user = $buser->get();
foreach ($backup_user as $bulk) {
$user->create([
'id' => $bulk->uye_id,
'name' => $bulk->uye_nick,
'email' => $bulk->uye_mail,
'password' => $bulk->uye_sifre,
'created_at' => $bulk->uye_tarih
]);
}
}
当我这样做时,AUTOINCREMENT正常增加,我无法获得以前成员的ID信息。
这样做的最佳方式是什么?
答案 0 :(得分:0)
我认为你正试图将数据库从joomla或wordpress带到laravel。
如果我需要这样做。我的方法是首先存储没有id
的所有基表,然后将插入后生成的存储id存储在相关表中。所以步骤将是
S1: store new `user` and get `id`
S2: relate with other table like `role` with `user_id`
Loop again till last row
答案 1 :(得分:0)
默认情况下,id
的{{1}}字段无法像您一样通过质量分配进行填充。如果要分配它,则必须将User
添加到用户类的可填写字段数组中。
应用程序/ user.php的
'id'