我应该如何使用JSONFindAndModifyCommand?

时间:2016-02-09 11:49:27

标签: scala playframework reactivemongo play-reactivemongo

我不知道如何使用play-reactivemongo' session_name(md5('seg'.$_SERVER['REMOTE_ADDR'].$_SERVER['HTTP_USER_AGENT'])); session_start(); if(empty($_SESSION["id"]) || empty($_SESSION["user"])) { header("Location:logout.php"); // IT COMES HERE ALL THE TIME die(); } session_write_close();

我需要通过某个字段进行upsert查询。所以我可以先删除任何现有的条目,然后插入。但Google表示FindAndModify命令具有JSONFindAndModifyCommand选项以实现相同的结果。

假设我有两个upsert: Boolean:查询和对象。

play.api.libs.json.JsObject

然后我这样做:

val q = (k: String) => Json.obj("sha256" -> k)

val obj = (k: String, v: String) => Json.obj(
    "sha256" -> k,
    "value" -> v
)

我使用play2-reactivemongo 0.11.9

谢谢!

1 个答案:

答案 0 :(得分:0)

更简单的是使用集合操作findAndUpdatefindAndRemove,例如

val person: Future[BSONDocument] = collection.findAndUpdate( BSONDocument("name" -> "James"), BSONDocument("$set" -> BSONDocument("age" -> 17)), fetchNewObject = true) // on success, return the update document: // { "age": 17 }