How to store date into Mysql database with play framework in scala?
Posted
by
Rahul Kulhari
on Stack Overflow
See other posts from Stack Overflow
or by Rahul Kulhari
Published on 2013-10-31T06:37:59Z
Indexed on
2013/11/06
3:55 UTC
Read the original article
Hit count: 290
I am working with play framework with scala and
what am i doing :
- login page to login into web app
- sign up page to register into web app
- after login i want to store all databases values to user
what i want to do:
when user register for web app then i want to store user values into database with current time and date but my form is giving error.
error:
List(FormError(dates,error.required,List())),None)
controllers/Application.scala
object Application extends Controller {
val ta:Form[Keyword] = Form(
mapping(
"id" -> ignored(NotAssigned:Pk[Long]),
"word" -> nonEmptyText,
"blog" -> nonEmptyText,
"cat" -> nonEmptyText,
"score"-> of[Long],
"summaryId"-> nonEmptyText,
"dates" -> date("yyyy-MM-dd HH:mm:ss")
)(Keyword.apply)(Keyword.unapply)
)
def index = Action {
Ok(html.index(ta));
}
def newTask= Action { implicit request =>
ta.bindFromRequest.fold(
errors => {println(errors)
BadRequest(html.index(errors))},
keywo => {
Keyword.create(keywo)
Ok(views.html.data(Keyword.all()))
}
)
}
models/keyword.scala
case class Keyword(id: Pk[Long],word: String,blog: String,cat: String,score: Long, summaryId: String,dates: Date )
object Keyword {
val keyw = {
get[Pk[Long]]("keyword.id") ~
get[String]("keyword.word")~
get[String]("keyword.blog")~
get[String]("keyword.cat")~
get[Long]("keyword.score") ~
get[String]("keyword.summaryId")~
get[Date]("keyword.dates") map {
case id~blog~cat~word~score~summaryId~dates => Keyword(id,word,blog,cat,score, summaryId,dates)
}
}
def all(): List[Keyword] = DB.withConnection { implicit c =>
SQL("select * from keyword").as(Keyword.keyw *)
}
def create(key: Keyword){DB.withConnection{implicit c=>
SQL("insert into keyword values({word},{blog}, {cat}, {score},{summaryId},{dates})").on('word-> key.word,'blog->key.blog,
'cat -> key.cat,
'score-> key.score,
'summaryId -> key.summaryId,
'dates->new Date()).executeUpdate
}
}
views/index.scala.html
@(taskForm: Form[Keyword])
@import helper._
@main("Todo list") {
@form(routes.Application.newTask) {
@inputText(taskForm("word"))
@inputText(taskForm("blog"))
@inputText(taskForm("cat"))
@inputText(taskForm("score"))
@inputText(taskForm("summaryId"))
<input type="submit">
<a href="">Go Back</a>
}
}
please give me some idea to store date into mysql databse and date is not a field of form
© Stack Overflow or respective owner