2015-05-08 1 views
0

Давайте предположим, что нам нужно найти пользователя, чей идентификатор 5546329b470000850084a622:

val selector = Json.parse("""{"_id":{"$oid":"5546329b470000850084a622"}}""") 

users.find(selector).map { 
    ... 
} 

Эквивалент из Монго оболочки будет

db.users.find({_id: ObjectId("5546329b470000850084a622") }) 

сейчас давайте предположим, что нам нужно найти пользователей, у которых есть 5546329b470000850084a622, 5546329b470000850084a623 и 5546329b470000850084a624 ... это команда из Монгольской оболочки:

db.users.find({_id: {$in: [ObjectId("5546329b470000850084a622"), ObjectId("5546329b470000850084a623), ObjectId("5546329b470000850084a624)"]}}) 

Что такое эквивалент JSON для ReactiveMongo? Вот этот?

{ 
    "_id" : { 
    "$oid" : { 
     "$in" : [ "5546329b470000850084a622", "5546329b470000850084a623", "5546329b470000850084a624" ] 
    } 
    } 
} 

ответ

1

{"$oid":"5546329b470000850084a622"} является представление JSON одного и того же, как ObjectId("5546329b470000850084a622") в mongo оболочки. См http://docs.mongodb.org/manual/reference/mongodb-extended-json/#oid

Я не знаю , но должны работы AFAIK:

{ 
    "_id" : { 
     "$in" : [ {"$oid": "5546329b470000850084a622"}, 
       {"$oid": "5546329b470000850084a623"}, 
       {"$oid": "5546329b470000850084a624"} ] 
    } 
}