次のコードは、Play 2 ScalaTodoList チュートリアルからのものです。
モデル:
case class Task(id: Long, label: String)
object Task {
val task = {
get[Long]("id")~
get[String]("label") map {
case id~label => Task(id, label)
}
}
def all(): List[Task] = DB.withConnection { implicit c =>
SQL("select * from task").as(task *)
}
def create(label: String) {
DB.withConnection { implicit c =>
SQL("insert into task (label) values ({label})").on(
'label -> label
).executeUpdate()
}
}
ここで、 Descriptionという 3 番目の属性を追加しようとしています。
case class Task(id: Long, label: String, description: String)
object Task {
val task = {
get[Long]("id")~
get[String]("label")~
get[String]("description") map {
case id~label~description => Task(id, label, description)
}
}
(私は Scala の初心者です。正しくできたかどうかはわかりません)
しかし、私はdef create
方法に行き詰まっています。description
SQLクエリに含める方法は?
編集:
ここに含める方法もわかりませんdescription
:
def newTask = Action { implicit request =>
taskForm.bindFromRequest.fold(
errors => BadRequest(views.html.index(Task.all(), errors)),
label => {
Task.create(label)
Redirect(routes.Application.tasks)
}
)