Seeding Users & Teams In Laravel Spark
Makes 5 users each with 1 team that has 5 members
Add a team factory to database/factories/ModelFactory.php
$factory->define(App\Team::class, function (Faker\Generator $faker) {
return [
'name' => $faker->sentence,
];
});
And use something like so within a seeder class
factory(App\User::class, 5) // team owners
->create()
->each(function($user) {
factory(App\Team::class)
->create(['owner_id' => $user->id])
->each(function($team) use($user) {
$team->users()->attach($user, ['role' => 'owner']);
factory(App\User::class, 5) // team members
->create()
->each(function($user) use ($team) {
$team->users()->attach($user, ['role' => 'member']);
});
});
Thanks a ton