-
リレーションシップの定義: ピボットテーブルを使用してリレーションシップを管理している場合、まずはモデル間のリレーションシップを正しく定義する必要があります。例えば、UserモデルとRoleモデルの間に多対多のリレーションシップがある場合、それぞれのモデルでリレーションシップを定義します。
// Userモデル public function roles() { return $this->belongsToMany(Role::class)->withPivot('id'); } // Roleモデル public function users() { return $this->belongsToMany(User::class)->withPivot('id'); }
-
ピボットIDの取得: リレーションシップのセットアップが完了したら、ピボットIDを取得することができます。例えば、Userモデルのインスタンスから特定のRoleモデルのピボットIDを取得する方法は次の通りです。
$user = User::find(1); $roleId = $user->roles->find(1)->pivot->id;
上記の例では、
find(1)
の部分を適切な条件に置き換えて、目的のRoleモデルのピボットIDを取得してください。