在制造具有相同模型的工厂时如何使用模型ID?

问题描述 投票:0回答:1

我想做的是在工厂中获取用户ID,以便我可以存储其哈希版本:

$factory->define(User::class, function (Faker $faker) {
    return [
        'name' => $faker->name,
        'hashed_id' => Hashids::encode($this->id),
        'email' => $faker->unique()->safeEmail,
        'email_verified_at' => now(),
        'password' => '$2y$10$92IXUNpkjO0rOQ5byMi.Ye4oKoEa3Ro9llC/.og/at2.uheWG/igi', // password
        'remember_token' => Str::random(10),
    ];
});

$this->id中的['hashed_id' => Hashids::encode($this->id)假定是指User::class] >>

错误

ErrorException:未定义的属性:Illuminate \ Database \ Eloquent \ Factory :: $ id

[我想做的是在工厂中获取用户ID,以便我可以存储其哈希版本:$ factory-> define(User :: class,function(Faker $ faker){return ['name' => $ faker-> ...

laravel factory
1个回答
0
投票

您应该让观察者来跟踪每个数据库记录的创建。

© www.soinside.com 2019 - 2024. All rights reserved.