Давайте предположим, что это фабрика:
PostFactory.php
$factory->define(Post::class, function (Faker $faker) {
return [
'title'=>$faker->word,
'user_id'=>factory(User::class)->create()->id
];
});
тогда я использую это так:
$user = factory(User::class)->create();
factory(Post::class, 5)->create(['user_id'=>$user->id]);
Я ожидаю, что будет создано 1 пользователь и 5 сообщений. Но на самом деле в базе данных 6 пользователей, потому что PostFactory
создает пользователя независимо от того, передан user_id
или нет.
Есть ли способ предотвратить создание нового пользователя, если атрибут user_id
передан методу create
?