Привет, я начинаю использовать scala play framework. Я создал простую регистрационную форму и подключился к mysql для вставки строк. Он работал хорошо. Теперь я хочу отображать вставленные строки на одной странице без обновления страницы с помощью json. Просьбе предложить мне идею, как получить вставленные строки на один и то же page.Thanks в advance.Here моего следующего кодplay framework, работающий с объектами json в Scala
Routes:
# Home page
GET /controllers.Application.index
GET /createform controllers.StudentController.createform()
POST /save controllers.StudentController.save()
Контроллера: Student контроллер
package controllers
import play.api.mvc._
import play.api.data._
import play.api.data.Forms._
import scala.collection.mutable.HashMap
import views.html
import models.Student
object StudentController extends Controller {
val studentform= Form (
tuple(
"firstname"->text,
"lastname"->text
)
)
def createform = Action {
Ok(html.createform(studentform))
}
def save = Action { implicit request=>
studentform.bindFromRequest.fold(
errors=> BadRequest(html.createform(errors)),
{
case(firstname,lastname)=>Student.create(firstname,lastname)
Redirect(routes.Application.index())
}
)
}
}
Application Controller
package controllers
import play.api._
import play.api.mvc._
object Application extends Controller {
def index = Action {
Redirect(routes.StudentController.createform)
//Ok(views.html.index("Your new application is ready."))
}
}
Модель:
пакет модели
import play.api.db._
import play.api.Play.current
import anorm._
import anorm.SqlParser._
case class Student (
id:Pk[Long]=NotAssigned,
firstname: String,
lastname: String
)
object Student {
def create(firstname: String,lastname:String) : Unit={
DB.withConnection{ implicit Connection=>
SQL("insert into student (Firstname,Lastname)" + "values({firstname},{lastname})"
).on(
'firstname->firstname,
'lastname->lastname
).executeUpdate()
}
}
}
вид createform.scala.html
@(studentform: Form[(String,String)])
@import helper._
@main(title="Student Registration Form"){
@form(action=routes.StudentController.save){
<fieldset>
<legend>Add Student</legend>
@inputText(
field=studentform("firstname"),
args='_label->"FirstName"
)
@inputText(
field=studentform("lastname"),
args='_label->"LastName"
)
<br/>
<div class="actions">
<input type="submit" value="Submit">
<a href="@routes.Application.index">Cancel</a>
</div>
</fieldset>
}
}
index.scala.html
@main("Welcome to Play 2.0") {
<a href="/createform">Add a new Student</a>
}
любезно предложить мне идею для хранения данных, вставленные в объекте JSON и те же строки, вставленные в тот же страницы в scala.Thanks заранее
Что касается меня, то ваш вопрос непонятен, какова ваша проблема, вы не знаете, как создать «json object» из вашего «студенческого объекта»? Или как создать 'Json response' или как манипулировать им на вашей странице? – arussinov