私はPlayerとPaymentモデルを持っています。支払いテーブルには「player_id」列があります。 Player + Payment関係の特定の属性を選択したいと思います。言い換えれば、私はこの2つのクエリを組み合わせたいと思う。Laravel ORMと()とselect()メソッドを組み合わせる
1. User::where(/* some condition */)->with('payment')->get();
2. User::where(/* some condition */)->select([/* some attributes */])->get();
しかし、私は
User::where(/* some condition */)->select([/* some attributes */])->with('payment')->get();
をしようとした場合には、モデルの関係の配列が空で返されます。
を動作し、あなたも '支払い*'選択配列に追加しますか。? –
選択肢を 'with'スコープの後ろに追加し、支払い属性のワイルドカードまたは希望のフィールド名をselectに追加してフィールドを取得します。 – Sandeesh
あなたはあなたの 'get(['id'、...])'で選択条件を渡すことができます。 'dd(User :: where()...-> toSql())'で生成されたクエリを出力してください。また、select属性を使用してクエリ全体を出力してください。私はあなたがuser.idを含まないと思うので、クエリが支払の関係をロードすることは不可能です。 – mimo