0
2 가지 속성에 따라 답변 집합을 검색해야합니다.몽고이 쿼리 구문 질문
# to use
to_use=[some array of ids]
friend_answers=Answer.any_in(:liker_ids=>to_use).map{|a|a}
liked_answers=Answer.where(:user_id.in=>to_use).map{|a|a}
feed_answers=(friend_answers+ liked_answers).sort{|x,y| y.created_at<=>x.created_at}
문제는 내가 하나에 2 개 개의 쿼리를 결합하는 방법을 알고하지 않는 것입니다 : 내가하고 결국 무엇
# where liker_ids is an array and user_id is a bson in the answer document
feed_answers=Answer.any_in(:liker_ids=>to_use,:user_id.in=>to_use).desc()map{|a|a}
:
이 내가하고 싶은 것입니다. 다양한 조합을 시도해 왔지만 아무 것도 작동하지 않는 것 같습니다. 내 해킹 된 방법은 물론 비효율적입니다.
Answer.Or 또는 오류 (정의되지 않은 메서드 또는 답변 : 클래스) –
이 하나가 작동이 끝났습니다 감사합니다! feed_answers = Answer.any_of ({: liker_ids.in => to_use}) desc (: created_at) .skip (to_skip) .limit (per_page) –
@ming 노란색 또는 일하기를 원하면'Answer.or' 또는'Answer.all.or'로 바꿔야합니다. 왜 모델을 직접 노출했는지, 또는 아직 모델에 노출되지 않았는지 잘 모르겠지만, 이미 기준이있는 경우 제대로 작동합니다. – rubish