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,同樣的事情。
在此先感謝您的幫助! 拉嘎