Я использую Laravel 5.6, и у меня проблема с сеялкой.
Я использую это:
factory(\App\Models\Merchant::class)->create([
'email' => 'admin@domain.com',
])->each(function ($m) {
$m->stores()->save(factory(\App\Models\Store::class)->create()
->each(function ($s) {
$s->products()->save(factory(\App\Models\Product::class, 10)->create());
})
);
});
Все hasMany отношений.
При этом у меня появляется эта ошибка:
Общая ошибка: 1364 Поле 'merchant_id' не имеет значения по умолчанию (SQL: вставить в stores
....)
Это как мои первые $ stores-> save (...) не использует созданного продавца.
В моей БД у меня создан один продавец.
Если я использую ->make()
вместо ->create()
, он работает для Магазина, но я не могу сохранить продукты, потому что он не сохраняется ...
Можно ли использоватьмногократное сохранение на таких фабриках?