0
我需要构建一个更新查询是这样的:
{
$set: {"yow": 1, "man": 2},
$setOnInsert: {"a": 3},
}
我只是不知道如何使用Cashbah做到这一点。事情就是$ set的值,我从JSON字符串(我将其解析为MongoDBObject)中得到它。所以我有这样的代码:
val setVal = JSON.parse(jsonString).asInstanceOf[MongoDBObject]
val updateQuery = $set(...) ++ $setOnInsert("a" -> 3)
我不知道该怎么把“...”。我想:
val updateQuery = $set(setVal) ++ $setOnInsert("a" -> 3)
但我得到一个编译错误,说:
type mismatch; found: com.mongodb.casbah.commons.MongoDBObject required: (String, ?)
我也试过:
val updateQuery = $set(setVal.toSeq) ++ $setOnInsert("a" -> 3)
得到了类似的错误:
type mismatch; found: Seq[(String, AnyRef)] required: (String, ?)
试图与toMap,同样的事情。
在此先感谢您的帮助! 拉嘎