私のCodeigniterのバックグラウンドのせいで、Laravel 4のEloquent ORMを楽しんでいるとは思えません。 IDの投稿のリストを降順で並べ替えるクエリを書いてみたいとします。どのようにしてEloquentがDB::table('posts')->orderBy('id', 'desc')->get();
の明瞭さを打ち消すことができますか?Eloquent(ORM)をFluent(Query Builder)で使用する場合
EloquentをFluentで使用する理由はありますか?それは主にテーブルを結合するためでしたか?
THX、ちょうど 'ポスト::見つける($ ID)のために、確認する - >コメント;' 'comments'方法、それは' POST'テーブルに対して実行する必要がありません'Post'と' Comment'テーブルの間の結合でもかまいませんか? – bitinn
わかりません。あなたは投稿とコメントの表を持っています。あなたはコメントの表にpost_idを持っていますし、ポストクラスのメソッドを記述しています(関数のコメント(){return $ this-> hasMany( 'comment');}。 Post :: find($ id) - >コメントを使用してあなたの投稿にコメントを投稿することができます(投稿からのselet *はcomments.post_id = posts.idのコメントに参加します) – Victor
説明として、EloquentはFluentから継承します。 'Post :: find($ id) - > comments'を実行している場合、デフォルトではjoinをしていませんが、最初に' SELECT * FROM posts WHERE id = $あなたが ' - > comments'を呼び出す/尋ねるときにのみ、' SELECT * FROM comments WHERE post_id = $ id'から投稿します。 同時にすべてのリレーションをロードする場合は、[Eloquent's Eager読み込み中](http://laravel.com/docs/eloquent#eager-loading )。 – trm42