我是新來的play,scala和reactivemongo,想知道是否有人可以用簡單的術語來解釋下面的代碼來理解。基本從JSON創建方法演練
def createFromJson = Action.async(parse.json) { request =>
import play.api.libs.json.Reads._
val transformer: Reads[JsObject] =
Reads.jsPickBranch[JsString](__ \ "name") and
Reads.jsPickBranch[JsNumber](__ \ "age") and
Reads.jsPut(__ \ "created", JsNumber(new java.util.Date().getTime())) reduce
request.body.transform(transformer).map { result =>
collection.insert(result).map { lastError =>
Logger.debug(s"Successfully inserted with LastError: $lastError")
Created
}
}.getOrElse(Future.successful(BadRequest("invalid json")))}
我知道它從具有名稱和年齡屬性的JSON用戶創建用戶。我不明白的是在這種方法中輸入JSON的方式。還有Action.async(par.json),request => getorElse,Future等的概念。
還有任何更簡單/更簡單的方法來編寫此方法將不勝感激。
提前致謝!
在您的示例中有與ReactiveMongo相關的代碼。你試過什麼?我還建議你有很多[文檔](http://reactivemongo.org/releases/0.11/documentation/tutorial/play2.html)。 – cchantep