13
Laravel Eloquentの「With()」関数を使用して特定の列を取得する
テーブルが2つUserありPostます。1つUserは多数をposts持ち、1つpostは1つだけに属しuserます。 私のUserモデルにはhasMany関係があります... public function post(){ return $this->hasmany('post'); } そして、私のpostモデルにはbelongsTo関係があります... public function user(){ return $this->belongsTo('user'); } 次に、これらの2つのテーブルを使用して結合したいのですがEloquent with()、2番目のテーブルの特定の列が必要です。クエリビルダーを使用できることはわかっていますが、使用したくありません。 Postモデルの中で私が書くとき... public function getAllPosts() { return Post::with('user')->get(); } 次のクエリを実行します... select * from `posts` select * from `users` where `users`.`id` in (<1>, <2>) しかし、私が欲しいのは... select * from `posts` select id,username from `users` where `users`.`id` …