0
我可以插入,讀取和刪除,但我無法使updateOne或updateMany修改文檔。Mongo Scala驅動程序集合不更新文檔
我使用MongoDB的3.2.7與libraryDependencies + = 「org.mongodb.scala」 %% 「蒙戈 - 斯卡拉驅動程序」 % 「1.1.1」
def read() = {
val query = Document("title" -> "Text Tiling")
methods.find(query).subscribe(
(method: Document) => update(method.toJson()), // onNext
(error: Throwable) => Logger.debug(s"Query failed: ${error.getMessage}"), // onError
() => Logger.debug("onComplete") // onComplete
)}
def update(jsonSting:String): Unit = {
Logger.debug("update() " + jsonSting)
Logger.debug(methods.find().first().toString)
val observer = new Observer[UpdateResult] {
override def onSubscribe(subscription: Subscription): Unit = {
Logger.debug("onSubscribe: " + subscription.toString)
}
override def onComplete: Unit = {
Logger.debug("onComplete")
}
override def onError(e: Throwable): Unit = {
Logger.debug("onError: " + e.getMessage)
}
override def onNext(doc: UpdateResult) {
Logger.debug("onNext")
}
}
val filter = Document("title" -> "Text Tiling")
val mod = Document("$set" -> Document("reputation" -> 5))
val result = methods.updateOne(filter,mod).subscribe(observer)
Logger.debug("result: " + result)}
下面是日誌:
[調試]應用 - 更新(){ 「_id」:{ 「$ OID」: 「5759542a4e0bf602adcab149」}, 「稱號」: 「文本平鋪」, 「信譽」:0}
[調試]應用程序 - [email protected]
[調試]應用 - onSubscribe:[email protected]
[調試]應用 - 結果:()
[調試]應用 - 的onComplete