You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
검색어로 Join된 Docs 찾기
쿼리로 온 키워드로 문서를 찾는 검색기능을
populate된 문서의 필드(foreignField)도 포함하여 검색을 구현하고싶었다.
localField만 검색 시에는 문제없이 find 메소드로 잘 되었으나, 연결된 외부 필드를 적용 시 찾질 못했다.
populate를 쓰고싶어 가능한 find로 이리저리 시도해보았으나, 계속 $regex 에러가 떳다.
결국 aggregate로 변경했고 오늘 처음 $lookup과 $unwind를 사용했다..
$lookup이 바로 populate처럼 두 컬렉션을 연결시켜주는 역할이었다.
$lookup 사용으로 작품 모델과 작가 모델을 합쳐주었다.
from: 연결하고자하는 컬랙션명
localField: 현재 컬랙션에서 해당 컬랙션과 연결되는 필드명
foreignField: 해당 컬랙션에서 로컬과 연결되는 필드명
as: 연결된 문서를 받을 필드명(내가 만들어도 되고 로컬필드명을 써도 된다)
pipeline: 조인할 컬렉션에서 실행하고자 하는 것을 쓰는데 아직 덜 숙지되었다.
let: 파이프라인과 추후 더 숙지해야할 것!
문서 연결 후, 페이지네이션을 위한 총 문서 갯수 오류
구글링을 통해 aggregate로 문서를 연결했을 시, $count 사용법을 찾았다.
문서를 연결할 때와 똑같은 로직을 두번 써야하는 것이 껄끄러웠지만 다른 방법을 못 찾았다.
$count가 $group + $project와 똑같은 기능이었다...!!
aggregate 시, $sort / $limit / $skip이 되지않는 오류
$limit과 $skip의 위치문제였는데 아직도 명확하게 이해하지는 못 했다.
아마 파이프라인대로 정보 가공 시에 문제가 생긴 것 같다.
The text was updated successfully, but these errors were encountered: