我在Scala中查询Mongo数据库并循环返回返回的元素,如下所示:
{ "_id" : "123:1350918540586068000:v" ,
"i" : {
"vendorStyle" : "coolStyle" ,
"createdAt" : 1350918540580 ,
"productId" : "product123" ,
"skuId" : "123"
}
}
我的问题是:如何从skuId中检索值?我知道你可以在Mongo的'find'方法中使用符号parent.child,但是从结果DBObject中读取时这不起作用
这是代码:
val elems = SkuStorage.collection.find(MongoDBObject("i.productId" -> productId))
elems.toSeq.map { element=>
readSkuById(element.get("i.skuId")) //breaks!
}
我是否需要获取(“i”)然后将字符串解析为JSON?有没有更好的方法来处理这个?
答案 0 :(得分:0)
你可以尝试
element.expand[String]("i.skuId")
返回Option[String]