gpt4 book ai didi

php - Laravel 工厂为字段返回 0,将数字存储在数据库中

转载 作者:行者123 更新时间:2023-12-01 22:23:26 25 4
gpt4 key购买 nike

我有一个看起来像这样的 laravel 工厂:

$factory->define( Municipality::class, function ( Generator $faker ) {

return [
'name' => $faker->city,
'number' => (int) $faker->numerify( '####' )
];

} );

如果我运行 php artisan tinker并像这样使用工厂 factory(Acme\Models\Municipality::class)->create , 我得到了输出

=> Acme\Models\Municipality {#797
name: "West Alysaland",
number: 0,
}

当我运行 Acme\Models\Municipality::all()我明白了

>>> Municipality::all();
=> Illuminate\Database\Eloquent\Collection {#771
all: [
Acme\Models\Municipality {#798
number: 9449,
name: "Lake Rosemarie",
},
],
}

number在模型中设置为可填写,字段设置为 unsignedInteger在迁移中。

有人知道为什么会这样吗?

编辑:

调试后我发现这是在->save()之后发生的在模型上被调用。

最佳答案

模型没有自增主键,所以我需要在模型中设置public $incrementing = false;

关于php - Laravel 工厂为字段返回 0,将数字存储在数据库中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38588788/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com