Laravel 拉威尔8号工厂的新规定

Laravel 拉威尔8号工厂的新规定,laravel,Laravel,有人能告诉我,我现在怎样才能用关系和外键制造工厂?例如,我需要制造这些工厂: 用户工厂, 类别工厂, 出厂后。 我已经完成了所有的关系,现在我只需要填写数据库中的字段。。。对于用户来说,通常是:姓名、电子邮件、一些通用PW等 对于类别,我只需要category(比如category_name)和slug );对于帖子,我需要用户id(与用户表有关系的作者)、类别id(与类别表的关系)、标题、slug、内容、图像、发布地址(可填充为$dates) 我在帖子和类别中尝试了以下代码: 邮局: $tit

有人能告诉我,我现在怎样才能用关系和外键制造工厂?例如,我需要制造这些工厂: 用户工厂, 类别工厂, 出厂后。

我已经完成了所有的关系,现在我只需要填写数据库中的字段。。。对于用户来说,通常是:姓名、电子邮件、一些通用PW等

对于类别,我只需要category(比如category_name)和slug

);对于帖子,我需要用户id(与用户表有关系的作者)、类别id(与类别表的关系)、标题、slug、内容、图像、发布地址(可填充为$dates)

我在帖子和类别中尝试了以下代码: 邮局:

$title = $this->faker->sentence;
    $slug = Str::slug($title);

    return [
        'user_id' => User::factory(),
        'category_id' => Category::factory(),
        'title' => $title,
        'slug' => $slug,
        'post_image' => $this->faker->imageUrl('900', '300'),
        'content' => $this->faker->paragraph,
        'published_at' => null
    ];
类别工厂:

$category = $this->faker->word;
    $slug = Str::slug($category);

    return [
        'category' => $category,
        'slug' => $slug
    ];
但它不起作用。。。我用tinker来运行它

User::factory()->count(20)->make()
Category::factory()->count(7)->make()
Post::factory()->count(20)->make()
问题是它会有20个用户(这一部分很好),但是它会有10个类别,而不是7个类别,并且在帖子中会有9个类别,这是永远不会发生的

第二个问题是分类会被发送到数据库,但是错误的数量和帖子根本不会被发送到数据库