- android - RelativeLayout 背景可绘制重叠内容
- android - 如何链接 cpufeatures lib 以获取 native android 库?
- java - OnItemClickListener 不起作用,但 OnLongItemClickListener 在自定义 ListView 中起作用
- java - Android 文件转字符串
我的 MongoDB 数据库中有一个集合,其中包含多个键。现在我想用一个新字段更新这个集合。所以这是我到目前为止所拥有的:
def confirm(hash: String) = {
val myDb = dbConn.db(dbName)
val userCollection = myDb[BSONCollection]("user")
val selector = BSONDocument(idKey -> BSONObjectID(hash))
val modifier = BSONDocument(
"$set" -> BSONDocument("date" -> BSONString(now.toString)) // Line 1
)
val command = FindAndModify(
userCollection.name,
selector,
Update(modifier, fetchNewObject = true)
)
myDb.command(command)
.map { user => // Line 2
Right(bidList)
}.recover {
case LastError(ok,err, code, errMsg, _) =>
Left(ServiceError(errMsg.getOrElse("failure!")))
}
}
上面的实现有两个问题:
第 1 行:这会用名为日期的新字段更新现有文档吗?
第 2 行:映射 myDb.command(command) 给了我一个 Option[BSONDocument],但令我惊讶的是我在范围内有一个隐式转换。所以我希望它返回一个 Option[User]!
最佳答案
你可以看看.findAndUpdate
和FindAndModifyResult
它提供了一个 .result
操作来根据可用的 BSON 阅读器获取结果。
val person: Future[Option[AType]] = collection.findAndUpdate(
BSONDocument("name" -> "James"),
BSONDocument("$set" -> BSONDocument("age" -> 17)),
fetchNewObject = true).map(_.result[AType])
关于mongodb - ReactiveMongo FindAndModify 说明,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33307215/
我在集合中有一个对象: { "id" : "123", "option" : { "key" : "one" , "value" : "1" }} 我可以这样找到对象: collection.find
我有一个 MongoDB 集合,我在其中存储 User 文档,如下所示: { "_id" : ObjectId("52d14842ed0000ed0017cceb"), "email"
当使用 ReactiveMongo 从 MongoDB 查询文档时,我试图过滤掉 password 字段: val projection = Json.obj("password" -> 0) def
阅读有关 Play 框架和 ReactiveMongo 的文档让我相信 ReactiveMongo 的工作方式是它使用很少的线程并且从不阻塞。 但是,从 Play 应用程序到 Mongo 服务器的通信
我正在使用 JSON4S 来解析我从外部 API 获取的一些 JSON 字符串。 有没有像 play reactivemongo JSONCollection 或 spray-json 到 spres
我的 MongoDB 数据库中有一个集合,其中包含多个键。现在我想用一个新字段更新这个集合。所以这是我到目前为止所拥有的: def confirm(hash: String) = { va
我正在尝试将新的 Date 值制作成 reactivemongo 聚合管道内的投影。 我见过其他人在 mongo shell 中创建它的示例,如下所示: db.runCommand({ "ag
我在 MongoDB 中有一个 jobs_queue 集合。这是一个上限集合,我正在使用可尾游标进行轮询: val cur = jobsQueue .find(Json.obj("done
我已经开始使用 Play 和 Play-ReactiveMongo 插件并在 GET “document by id”场景中测试 404 响应。不幸的是,我得到了这个异常,而不是 Play 返回 40
我正在用 akka-http 和 ReactiveMongo 编写一个网络服务。 我遇到了问题,我无法自己解决。 我有方法 def saveRoute(route: Route)(implicit
如果我想在 http4s 之类的东西中使用 ReactiveMongo 我必须将 ReactiveMongo 返回的所有 Future 调用包装在 Cats IO 效果中,这样说是否正确? 概括地说,
我正在使用 reactivemongo。 在从 mongodb 读取文档时,我编写了特定于该结构的代码。 结构 { "name" : "test", "age" : 3 } 为了阅读这篇文章,
因此,一直在使用 Play、ReactiveMongo 和 MongoDB 开展一个较小的项目。我的问题是关于 application.conf ReactiveMongo 的一部分,有标准的谷歌搜索
我正在尝试设置一个 Play 应用程序,它将使用 ReactiveMongo Scala 驱动程序连接到 mongoDB。我已经让它工作了,但最终还是想连接到一个使用 SSL 支持构建的 mongoD
我使用 play Reactivemongo 插件和 Reactivemongo 一起工作。 def list(ps: Int = pageSize, page: Int = 1, sortBy: S
我使用 ReactiveMongo 的查询: collection .find( Json.obj("relateds" -> Json.obj("$elemMatch" -> activ
我正在使用没有 Play 框架的 ReactiveMongo。 我正在尝试编写与以下简单 MongoDB 查询等效的内容: db.oplog.rs.find({"o.TimeCreated":{"$g
我们目前正在解决一个问题,我们在 scala 中将 specs2 与 mongodb/reactivemongo + Play! 一起使用。 当我们运行写入 mongodb 的测试时,第一个操作运行良
我看到这个问题似乎很早就有人问过(差不多 3 年前),但从那时起响应式(Reactive) mongo 库可能会有很多变化。 我正在使用 2.4 版本的 play 插件,但是 reactivemong
我现在能以某种方式将 ReactiveMongo 与 TypeSafe Stack 集成吗?据我所知,ReactiveMongo 需要 Play! 2.1 还没有生产就绪?有没有人在这方面有任何积极的
我是一名优秀的程序员,十分优秀!