Ahm*_*ani 3 orm scala playframework sorm
我发现SORM非常有趣且有前途,但我找不到一种方法来整合它与任何指南玩?
Nik*_*kov 11
添加适当的SORM和所选数据库的依赖关系到生成的project/Build.scala,例如:
val appDependencies = Seq(
"org.sorm-framework" % "sorm" % "0.3.8",
"com.h2database" % "h2" % "1.3.168"
)
Run Code Online (Sandbox Code Playgroud)在同一个文件中,确保您的项目依赖于SORM所依赖的相同Scala版本(对于SORM 0.3.8,它是Scala 2.10.1):
val main = play.Project(appName, appVersion, appDependencies).settings(
scalaVersion := "2.10.1"
)
Run Code Online (Sandbox Code Playgroud)
如果您错过了这一步,可能会遇到这个问题.
在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"
)
Run Code Online (Sandbox Code Playgroud)
请注意,不需要遵循这些命名和位置约定 - 例如,您可以将SORM实例放在控制器或其他地方(如果需要).
在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)
}
}
Run Code Online (Sandbox Code Playgroud)
这将打印出已保存的A案例类值的生成ID .
使用play run或play start命令运行服务器.
| 归档时间: |
|
| 查看次数: |
3654 次 |
| 最近记录: |