【发布时间】:2015-01-06 13:01:30
【问题描述】:
我正在尝试使用 Play-ReactiveMongo 插件通过 Play 和 Angular 在 MongoDB 中读取/写入简单记录。该插件似乎是一个不错的选择,因为它允许您使用简单的案例类和常规 JSON,而不是在 BSON 和 JSON 之间显式转换。但是使用该插件的几个示例似乎并未涵盖如何在同一框架内将 MongoDB 对象 ID 映射到 JSON 或从 JSON 映射。这一切似乎都可以在后台使用大量隐式(对我来说很神奇)读取/写入,但它们似乎无法处理对象 ID。
我的代码基于 Alex Lashford 的 Modern Web Template,与 Stephan Godbillion's example using JSON Read/Writes 非常相似,但 Alex 和 Stephan 都没有显示与 MongoDB 对象 ID 有任何关系。
我的数据记录需要某种唯一 ID,因此我可以获取和更新它们等,使用 MongoDB 提供的 ID 是有意义的,但我似乎无法找到一种在内部干净地使用它的方法Play ReactiveMongo 插件。
是否有人知道一个示例,该示例显示了如何将 Play ReactiveMongo 插件与 JSON 集合一起使用,以及以某种方式将对象 ID 映射到 JSON 或从 JSON 映射,而无需将我的所有处理转换为使用 BSON?
【问题讨论】:
-
如果可能你使用 scala salat,他们有关于 mongo 和 scala 的良好文档,并且很容易与 play 集成github.com/leon/play-salat
-
谢谢,yogesh。 Salat 可能是一种选择,但这需要我重新编写现有代码并实现大量映射代码。 Play ReactiveMongo 插件似乎给了我 90% 的我需要的东西,除了对象 ID。如果我需要为对象 ID 实现一些显式映射,那可能仍然比切换到 Casbah/Salat 更容易。我只需要了解如何做到这一点。
标签: mongodb scala playframework play-reactivemongo