Учитывая следующую структуру данных:
{
"_id" : ObjectId("55760212e4b011ee8c72fb1f"),
"firstname" : "joe",
"lastname" : "blow",
"email" : "[email protected]",
"sysadmin" : false,
"siteadmin" : false,
"sites" : [
{
"siteId" : ObjectId("55760212e4b011ee8c72fb1e"),
"notification" : false
}
]
}
Я пытаюсь $pull
вложить sites
объект, используя ObjectId
в качестве критерия поиска. Следующий код:
val siteSearch = MongoDBObject("siteId" -> siteId)
val query = MongoDBObject("sites" -> siteSearch)
db(collection).update(query, $pull(query))
генерирует для следующих query
{ "sites" : { "siteId" : { "$oid" : "55760212e4b011ee8c72fb1e"}}}
Я предполагаю, что это не удаление сайта, потому что я хочу, чтобы query
выглядело так:
{ "sites" : { "siteId" : ObjectId("55760212e4b011ee8c72fb1e")}}
Я не уверен, как заставить Cashbah выдать правильный запрос.