Scala操作没有执行将json对象存储在ajax上使用Play Framework和Scala提交到Postgresql数据库?

我在我的视图页面(index.coffee)中有一个json对象,我在发送到Scala控制器类以通过jQuery / ajax存储在Postgresql数据库中,然后单击我的提交按钮。 我已经完成了以下操作:(控制器,模型和数据库表),但是在单击Submit按钮后我没有在数据库表中看到任何json数据,即使我在控制台上看不到任何错误和我的println()消息(我希望addJson ()动作没有执行)。我不确定我在所有文件的整个代码中做错了什么和哪里错了? 当我的Play Framework服务器(2.2.3)连接到我的数据库时(我可以看到控制台上的消息说:[info] play – database [default] connect at:jdbc:postgresql:// localhost:5432 / mydb)请让我知道我做错了什么,并提前感谢。

app.scala:

package controllers import play.api.mvc._ import play.libs.Json; import com.fasterxml.jackson.databind.JsonNode; import play.api._ import play.api.mvc.Request import play.api.libs.json._ import play.api.mvc.AnyContent; import play.libs.Json; import com.fasterxml.jackson.databind.JsonNode; import anorm._ import play.api.data.Form import play.api.data.Forms.{single, nonEmptyText} import play.api.data._ import play.api.data.Forms._ import play.api.mvc.{Action, Controller} import anorm.NotAssigned import models.Jsoncontent import play.api.Play.current import views._ import models._ class Application extends Controller { //def saveJsonData = Action { request => //val body: AnyContent = request.body //val jsonBody: Option[JsValue] = body.asJson //jsonBody.map {json => //jsonBody.map {dao => //dao.persist(json) //Ok("Saved") // }}.getOrElse { // BadRequest("Expecting text/json request.body") // } //} val jsonForm = Form( single("content" -> nonEmptyText) ) def addJson() = Action { implicit request => println("Inside addJson() ... !") jsonForm.bindFromRequest.fold( errors => BadRequest, { case (content) => Jsoncontent.create(Jsoncontent(NotAssigned, content)) Redirect(routes.Application.index()) } ) } } 

Jsoncontent.scala:

 package models import anorm._ import anorm.SqlParser._ import play.api.db._ import play.api.Play.current import play.api.libs.json.{Json,JsValue} import anorm.features.parameterWithUntypedName case class Jsoncontent ( id: Pk[Long], content: String ) object Jsoncontent { val extractor = { get[Pk[Long]]("id") ~ get[String]("content") map { case id~content => Jsoncontent(id, content) } } def create(jsondata: Jsoncontent): Unit = { DB.withConnection { implicit connection => SQL("INSERT INTO jsondata(content) VALUES({content})").on( 'content -> jsondata.content ).executeInsert() } } } 

index.coffee:

 do -> jsonContent = {} $('input[id=buttonId]').click -> name = $(this).attr('name') jsonContent[name] = $(this).val() return $('#submit').click -> $('input[id=fileId]').each ($i) -> name = $(this).attr('name') jsonContent[name] = $(this).val() $.ajax type: 'POST' contentType: 'application/json; charset=utf-8' dataType: 'json' url: '/addJson' data: JSON.stringify(jsonContent) success: (data) -> alert 'data saent' +data console.log data return error: (XMLHttpRequest, textStatus, errorThrown) -> alert 'error found' return return console.log JSON.stringify(jsonContent) return return 

路线:

 POST /addJson @controllers.Application.addJson 

表:

 CREATE TABLE jsondata ( id serial PRIMARY KEY, content json NOT NULL );