내 코드는 다음과 같습니다몽구스로 필드에 별개의 문서를 얻으려면 어떻게해야합니까?
Checkin.distinct field, conditions, (err, checkinResults) ->
doStuff()
그러나, checkinResults
이 ObjectId
's의 시리즈는 간단하다. 전체 문서가 필요합니다. 어떤 아이디어?
내 코드는 다음과 같습니다몽구스로 필드에 별개의 문서를 얻으려면 어떻게해야합니까?
Checkin.distinct field, conditions, (err, checkinResults) ->
doStuff()
그러나, checkinResults
이 ObjectId
's의 시리즈는 간단하다. 전체 문서가 필요합니다. 어떤 아이디어?
distinct
방법은 당신이 두 개 이상의 쿼리가 필요하므로, 선택한 필드가 아닌 전체 문서를 반환
getCheckinsByX = (field, cb) ->
Checkin.find({ field }).limit(x).exec (err, checkins) ->
cb err, { field, checkins }
Checkin.distinct field, conditions, (err, results) ->
async.map results, getCheckinsByX, (err, checkinsByField) ->
# use list of checkins
당신이 볼 수도 있으므로 이것은, DB 쿼리를 많이 생성 할 수 aggregation framework에 입력하거나 클라이언트에서 하나의 쿼리 + 그룹화 방법을 사용할 수 있습니다.
이 컨텍스트에서는 작동하지 않습니다. 별개의 호출은 Checkin 모델 목록을 반환하지 않습니다. 필드 속성 목록을 반환하고 reftype이 손실됩니다. – Greg
@ 그렉 나는 잘못된 제안을 제거하기위한 답을 업데이트했다. –
이 coffeescript가 맞습니까? –
입니다. 죄송합니다. 분명히해야합니다. – Shamoon