두 명의 사용자간에 작업 로그 인 모음이 있습니다. 그것에는 src_id와 dest_id가 있습니다.
id1과 ids 목록 사이의 작업 인 "ids = [id2, id3, id4]"레코드를 모두 가져 오려고합니다.
다음 두 문장이 제대로 작동 :
act_obs = self.db.action_log.find(
{'$or': [
{'dest_id': id1, 'src_id': {'$in': ids} },
{'src_id': id1, 'dest_id': {'$in': ids} }
]}
)
그러나
act_obs = self.db.action_log.find(
{'src_id': id1, 'dest_id': {'$in': ids} }
)
act_obs = self.db.action_log.find(
{'dest_id': id1, 'src_id': {'$in': ids} }
)
, 이것은 내가 잘못이 무엇인지 알아낼 수있는 곳이며, 다음은 모든 결과를 반환 거부
누군가 내가 잘못하고있는 것에 대해 밝힐 수 있습니까? 그리고 더 중요한 것은 몽고에서 내가하려고하는 것을 성취하는 것입니다.
id1이 src_id이고 id 목록에있는 id 중 하나가 dest_id이거나 id1이 dest_id이고 임의의 id가 src_id 인 모든 레코드를 가져 오려고합니다. .
저는 pymongo 1.7을 사용하고 있습니다. 고맙습니다!