- Seederファイルの作成: まず、データベースに初期データを挿入するためのSeederファイルを作成します。ターミナルで以下のコマンドを実行して、新しいSeederファイルを生成します。
php artisan make:seeder RelationshipSeeder
これにより、database/seeds
ディレクトリにRelationshipSeeder.php
ファイルが作成されます。
上記の例では、Post
モデルとTag
モデルのインスタンスを作成し、$post->tags()->attach($tag)
メソッドを使用してリレーションシップを作成しています。
- Seederの実行:
DatabaseSeeder.php
ファイルを開き、run
メソッド内に作成したSeederファイルを呼び出します。
use Illuminate\Database\Seeder;
class DatabaseSeeder extends Seeder
{
public function run()
{
$this->call(RelationshipSeeder::class);
}
}
- Seederの実行: ターミナルで以下のコマンドを実行して、Seederを実行します。
php artisan db:seed
これにより、定義したリレーションシップがデータベースに挿入されます。
以上の手順に従うことで、Laravel Seederを使用してリレーションシップを作成することができます。これにより、初期データを簡単に準備することができます。