我正在使用Kotlin和MongoDb构建应用程序,并使用KMongo创建,读取,更新和删除文档。除了updateOne方法之外,其他所有东西都工作正常。当尝试将upsert设置为false来更新文档时,它仍会通过添加新属性来更新文档。
这是我的代码:
fun updateOneEmployee(id: String, newEmployee: String): UpdateResult {
var options = UpdateOptions()
options = options.upsert(false)
return Collection.updateOne(Employee::id eq id, "{\$set:$newEmployee}", options)
}
NewEmployee是JSON格式的字符串,它被传递给函数:
{"name":"John"}
所以我的问题是:如何更新文档而不进行插补?