在laravel 5.2中显式插入`id`自动增量主键字段

MM2

我正在将旧数据迁移到laravel中。

我想要的是在具有默认$table->increments(id)字段的新表中保持先前的ID不变

在laravel中有一种方法可以明确插入此id字段吗?

由于我无法使用雄辩的模型create方法来做到这一点

User::create([
'id' => 123456,
'first_name' => 'john',
'last_name' => 'doe'
])

那里甚至有可能吗?

Jamkoko

问题必须出在用户模型中。打开User.php文件并修改$fillable变量。添加id到数组。$fillable变量告诉Eloquent像您正在执行的那样,防止哪些字段受到质量分配(质量分配意味着您要一次在插入中设置所有值)。因此,即使您id像在create()调用中那样指定,Eloquent也会忽略您设置的任何值,因为该字段不是$fillable字段的一部分

因此,具有以下变量:

protected $fillable = ['id', 'first_name', 'last_name'];

并且您应该会很好(还要考虑到您没有将任何字段留空,根据用户迁移,该字段不能为空)

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章