0
私はピボットテーブルのIDを使ってデータを読み込もうとしています。Laravel熱心な負荷ピボット?
今私は手動でやったことがありますが、関係をもって雄弁にこれを直接行う方法があるのだろうか?
$ids = $tournament->matches
->pluck('users')
->flatten()
->pluck('pivot')
->pluck('team_id')
->unique();
$teams = \App\Models\Team::whereIn('id', $ids)->get()->keyBy('id');
$tournament->matches->each(function ($match) use ($teams) {
$match->users->each(function ($user) use ($teams) {
$user->team = @$teams[$user->pivot->team_id] ?: null;
});
});
ここに上でより多くの情報ヘッドに
以下のようになりますこれはまったく、多くのことを試みているが、何も働いていない。 – Rob
通常のモデルを照会するときにそのピボットを照会することができる場合は、ミドルテーブルを表すカスタムピボットクラスを作成しましたか?慣例では中間テーブルモデルは必要ありませんが、中間テーブルにはアプリケーションの他の部分にリンクする情報がある場合、中間テーブルを表すモデルが必要な場合があり、中間テーブルを表すモデルがあれば、他のレギュラーモデルとそれはあなたが私のことを混乱させるものです。:) –
ねえ、はい、私は今それを得ました、素晴らしい作品。実際には非常にシンプルで、私はそれをoverthinking :-) – Rob