가설
원피스thread
(帖子) 预加载 comments
(评论)和 comments.user
(댓글을 달아주신 유저)
보통 코드 한 줄이면 얻을 수 있습니다
으아악이것에는 문제가 없으며 아주 잘 쿼리해서 표시할 수 있습니다.
으아악하지만 현재 요구 사항은 댓글을 단 사용자 데이터를 삭제하면 관련 댓글 데이터가 표시될 수 없으며, 그렇지 않으면 정보가 불완전해질 것이라는 것입니다(이것은 정상적인 요구겠죠?)
그렇다면 논리적으로는 inner join
查询就可以过滤掉不符合的数据.Laravel
的Eloquent
目前我只查到with
방법
이 요구사항은 Yii
的ActiveRecord
를 통해 쉽게 해결할 수 있습니다.
으아악
잘 모르는 부분이 있어서 해당 분야 전문가에게 해결 방법을 문의하고 싶습니다!Laravel
laravel 쿼리 빌더의 조인은 기본적으로 내부 조인 동작으로 설정되어 있으며 매뉴얼에는 그렇게 나와 있습니다
으아악
Eloquent ORM에는 직접 조인 쿼리 조건이 없지만 위에서 언급한 대로 해결 방법이 있습니다.
하지만 저는 일반적으로 성능상의 이유로 ORM을 사용하지 않습니다. 쿼리 빌더를 사용합니다.
으아악
관계에 Join ->hasMany()->join()->where()를 원하는 대로 작성하세요.
사실 제가 물어보는 건 주로 사용법에 관한 것입니다. 이런 요구는 매우 흔합니다.
이것은rails
그리고
laravel
에서 구현되었습니다. 현재with
하나만 표시됩니다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
rails
에는preload
,includes
,Eager load
,Joins
가 있습니다. 여기에 데이터를eager loading
하는 다양한 방법이 있습니다.설명하는 기사는 다음과 같습니다.
http://www.mamicode.com/info-...
Yii
의ActiveRecord
에는with
,joinWith
(내부 조인, 왼쪽 조인....)도 있습니다.innerJoinWith
, 필요에 따라eager loading
수행🎜 🎜다른 건 확인하지 않겠습니다.laravel
을 손상시키려는 것은 아니지만laravel
에서Eloquent
가 얼마나 강력한지는 아직 생각하지 않습니다. 코드> 🎜