import play.api.db._play.api.dbパッケージは、データベース関連のクラスを提供するものです。またanormは、文字通りanorm関連のクラスがまとめてあります。この他、コード内で必要となるものとしてplay.api.Play.currentとanorm.SqlParserをimportしてあります。これらは、まぁ必須のimportと考えていいでしょう。
import anorm._
import play.api.Play.current
import anorm.SqlParser._
case class クラス名(……引数……){case classでは、「addData」メソッドが定義されていますね。そしてobjectには、dataという変数と、「getAll」メソッドが定義されています。これらは何が違うのでしょう? なぜ、どっちか1つにまとめないのでしょうね?
……メソッドの定義……
}
object クラス名 {
……メソッドの定義……
}
※リストが表示されない場合
AddBlockなどの広告ブロックツールがONになっているとリストなどが表示されない場合があります。これらのツールをOFFにしてみてください。
※models/mydata.scalaのソースコード package models import play.api.db._ import anorm._ import play.api.Play.current import anorm.SqlParser._ case class Mydata( name: String, mail: String, tel: String) { def addData { DB.withConnection { implicit c => val id: Int = SQL("insert into mydatas (name, mail, tel) values ({name}, {mail}, {tel})"). on('name->this.name, 'mail -> this.mail, 'tel -> this.tel).executeUpdate() } } } object Mydata { val data = { get[String]("name") ~ get[String]("mail") ~ get[String]("tel") map { case name ~ mail ~ tel => Mydata(name, mail, tel) } } def getAll: List[Mydata] = { DB.withConnection { implicit c => val datas = SQL("Select * from mydatas").as(Mydata.data *) return datas } } }
<< 前へ | 次へ >> |