仮定
ワンピースthread
(帖子) 预加载 comments
(评论)和 comments.user
(コメントしたユーザー)
通常は 1 行のコードで取得できます
リーリーこれには問題はなく、非常にうまくクエリと表示ができます。
リーリーでも、現状の要望としては、コメントを付けたユーザーデータを削除すると、当然関連するコメントデータが表示されなくなり、情報が不完全になってしまうということです(これは普通の要望ですよね?)
となると論理的にはinner join
查询就可以过滤掉不符合的数据.Laravel
的Eloquent
目前我只查到with
メソッド
このニーズは Yii
的ActiveRecord
を通じて簡単に解決できます
リーリー
あまり詳しくないので、この分野の専門家に解決方法を聞きたいです。よろしくお願いします。
laravelのクエリビルダーの結合はデフォルトで内部結合動作になります、マニュアルにはそう記載されています
リーリー
Eloquent ORM には直接結合クエリ条件がありませんが、前述のように回避策があります。
ただし、パフォーマンス上の理由から、私は通常 ORM を使用しません。クエリビルダーを使用しています。
リーリー
リレーションシップに join を書くだけです。 ->hasMany()->join()->where() 好きなように書くことができます。
実は私が質問しているのは、主に使用方法に関する質問です。
ここですrails
里都是有实现的而
laravel
目前我看到的只有一个with
データメソッド
そしてrails
里有preload
、includes
、Eager load
、Joins
, 可以来区别eager loading
解説記事はこちらhttp://www.mamicode.com/info-...
他のものはチェックしませんYii
的ActiveRecord
也有with
,joinWith
(inner join, left join ....)innerJoinWith
, 来根据需求做eager loading
何がそんなに強いのか
laravel
, 我是到现在也没有觉得laravel
的Eloquent
を傷つけたいわけではありません。