У меня есть 2 модели, которые будут связаны. Называется Menu
и Page
. Соотношение между ними выглядит примерно так:
Каждый Menu
имеет по одному Page
Каждый Page
принадлежит Menu
Я создал сеялку, которая выглядит следующим образом:
<?php
use App\App;
use App\Component;
use App\Menu;
use App\Page;
use App\User;
use Illuminate\Database\Seeder;
class UsersTableSeeder extends Seeder
{
/**
* Run the database seeds.
*
* @return void
*/
public function run()
{
$tester = new User();
$tester->name = "Tester";
$tester->email = "test@appbuilder.com";
$tester->password = bcrypt('password');
$tester->save();
// Create 5 apps for each user
$tester->apps()->saveMany(factory(App::class, 5)->make())->each(function ($app) {
// Create 5 menus for each app
$app->menus()->saveMany(factory(Menu::class, 5)->make());
// Create 5 pages for each app
$app->pages()->saveMany(factory(Page::class, 5)->make())->each(function ($page) {
$page->components()->saveMany(factory(Component::class, 5)->make()); // Create 5 components for each page
});
});
}
}
Я хочу связать каждую страницу, созданную ее фабрикой, с меню. Примерно так:
$menu->associate($page);
Возможно ли это? Как я могу этого достичь? Заранее спасибо.