lam*_*das 15 types scala anorm playframework-2.0
我正在使用Scala和Anorm编写Playframework 2.0应用程序来访问db.
目前我使用Pk[Long]的id领域,我很担心额外的get访问实际值所需要的呼叫.所以我开始使用普通Long的id字段,一切仍然完美.
什么Pk是,我应该使用它而不是普通类型?Pk与普通类型相比,它能给我带来额外的功能吗?
opy*_*ate 18
Pk 允许您指定键入的主键.
另外,假设你有这样一个人为的模型:
case class MyModel(id: Pk[Long], foo: String)
Run Code Online (Sandbox Code Playgroud)
您可以使用以下方法构建模型实例:
MyModel(anorm.NotAssigned, "notKnownAtRuntime")
Run Code Online (Sandbox Code Playgroud)
...如果您的数据库负责生成密钥,或者:
MyModel(anorm.Id(123L), "knownAtRuntime")
Run Code Online (Sandbox Code Playgroud)