2013-02-16 112 views

回答

11
  1. 安装Play> = 2.1.0。
  2. 使用播放指南
  3. 添加适当的SORM的和选择的数据库的依赖所产生的project/Build.scala生成项目,如:

    val appDependencies = Seq(
        "org.sorm-framework" % "sorm" % "0.3.8", 
        "com.h2database" % "h2" % "1.3.168" 
    ) 
    
  4. 在同一个文件,确保您的项目依赖于相同的斯卡拉版本,其上SORM取决于(对于SORM 0.3.8这是斯卡拉2.10.1):

    val main = play.Project(appName, appVersion, appDependencies).settings(
        scalaVersion := "2.10.1" 
    ) 
    

    如果你错过了这一步,你可能会碰到this issue

  5. app/models/package.scala地方所有的case类和SORM的实例声明,例如:

    package models 
    
    case class A(name : String) 
    case class B(name : String) 
    
    import sorm._ 
    object Db extends Instance(
        entities = Set(Entity[A](), Entity[B]()), 
        url = "jdbc:h2:mem:test" 
    ) 
    

    注意,没有要求遵循这些命名和位置惯例 - 比如,你可以把你SORM实例在你的控制器或其他地方,如果你想。

  6. app/controllers/Application.scala地方利用SORM一些控制器动作,例如:

    package controllers 
    
    import play.api.mvc._ 
    import models._ 
    
    object Application extends Controller { 
    
        def index = Action { 
        val user = Db.save(A("test")) 
        Ok(user.id.toString) 
        } 
    
    } 
    

    这将打印出保存A案例类值的生成的ID。

  7. 使用play runplay start命令运行您的服务器。

+0

谢谢!任何想法如何轻松从Play获取db.default设置? – 2013-05-06 03:36:28

+1

@EnekoAlonso请教Play的文档 – 2013-05-06 05:13:37

+1

如果有人需要它,这个答案很好地解释了它:http://stackoverflow.com/questions/9857907/access-play-2-0-configuration-variables-in-application-conf – 2013-05-13 21:07:50

0
libraryDependencies ++= Seq(
jdbc, 
cache, 
ws, 
"org.sorm-framework" % "sorm" % "0.3.22", 
"com.h2database" % "h2" % "1.3.168", 
"org.scalatestplus.play" %% "scalatestplus-play" % "1.5.1" % Test 
) 
+0

当给出答案时,最好给出[关于为什么你的答案的一些解释](http://stackoverflow.com/help/how-to-answer)。这在*非常*旧的问题上尤其如此 – 2017-02-21 01:37:26