小编kk_*_*kk_的帖子

Laravel播种工厂但扩展它

我想要一个包含两个表Users和Companies的数据库,而users表有一个带有公司ID的外键.所以1家公司可以拥有多个用户.

我在laravel中为此创建了模型,并为每个表创建了一个工厂.

在我的播种机中,我想一次创建多个数据线,并找到了这个解决方案:

factory(App\Company::class, 10)->create(); 
Run Code Online (Sandbox Code Playgroud)

这适用于公司表.但我需要为users表扩展它,以便搜索可用的公司ID.
我有什么想法可以做到这一点?
如果我不能搜索可用的ID,我也很乐意用"company_id"字段扩展它并从1-10给它随机值(因为我知道这些是现在的ID).

所以基本上我想扩展它以使用工厂中的字段,但用另一个字段"company_id"扩展它:

factory(App\Users::class, 10)->create();
Run Code Online (Sandbox Code Playgroud)

这是用户工厂代码:

$factory->define(App\User::class, function (Faker\Generator $faker) {
    return [
        'first_name' => $faker->firstName,
        'last_name' => $faker->lastName,
        'postcode' => $faker->postcode,
        'city' => $faker->city
    ];
});
Run Code Online (Sandbox Code Playgroud)

php database testing laravel laravel-5

3
推荐指数
1
解决办法
1014
查看次数

标签 统计

database ×1

laravel ×1

laravel-5 ×1

php ×1

testing ×1