我正在尝试使用以下方法创建一个向mongoddb插入数据的帖子请求:1.sbt 0.13.6 2.播放2.10 3. scala 2.11.2 4. play2-reactivamongo 0.10.2 5. mongodb 2.6.4
数据由json发布,并为模型创建一个case类,并使用JSPath将json转换为实体类.
这是我的示例代码:
def inserTransaction = Action(parser.json) { implicit request =>
val json = request.body
val data = json.as[Transaction]
Logger.info(data.toString)
val future = collection.insert(data.copy(id = Option[BSONObjectID](BSONObjectID.generate)))
var result = ""
future.onComplete {
case Failure(t) => result = "An error has occured: " + t.getMessage
case Success(post) => result = "success"
}
Ok(result)
}
Run Code Online (Sandbox Code Playgroud)
我已经看到一些示例代码使用Action.sync来处理控制器中的异步,但是当我尝试使用Action.sync时,我的Intellij IDE检测到错误"无法将Action.sync解析为签名",我试图改变像这样的功能的结果
future.onComplete {
case Failure(t) => Ok("An error has occured: " + t.getMessage)
case Success(post) …Run Code Online (Sandbox Code Playgroud)