-
モデルの作成: まず、関連するテーブルに対応するEloquentモデルを作成します。例えば、"User"と"Post"という2つのテーブルがある場合、それぞれに対応するUserモデルとPostモデルを作成します。
-
リレーションシップの定義: Userモデルには、Postモデルに対するリレーションシップを定義する必要があります。これを行うには、Userモデルのメソッド内に以下のようなコードを追加します。
public function post()
{
return $this->hasOne(Post::class);
}
上記の例では、"post"という名前のメソッドを作成し、hasOne
メソッドを使用してリレーションシップを定義しています。この場合、Userは1つのPostに関連付けられています。
- リレーションシップの利用: リレーションシップが定義されたら、Userモデルのインスタンスでリレーションシップを使用できます。例えば、次のようにしてUserに関連するPostを取得できます。
$user = User::find(1);
$post = $user->post;
上記の例では、IDが1のUserを検索し、その関連するPostを取得しています。
これで、単一のデータに関するリレーションシップを簡単に設定し、利用することができます。適宜、必要なリレーションシップの種類に合わせて上記のコードを修正してください。