我正在浏览Slick的文档,以设置一个快速工作的原型.我正在浏览这个链接.
在Mapped Tables部分中,我<>在所提到的示例中看到了一个运算符,但无法在任何地方找到任何文档.需要帮助来理解这一点.
And*_*ann 21
的<>操作者限定的关系Row中Table和case class.
case class User(id: Option[Int], first: String, last: String)
ROW |id | first | last |
Run Code Online (Sandbox Code Playgroud)
因此,数据首先从Tabel中取出n-tuple(左侧<>),然后转换为case class(右侧<>).
要进行案例类工作的转换,需要两种方法:
Row到n-tuple到case class.scala> User.tupled
res6: ((Option[Int], String, String)) => User = <function1>
Run Code Online (Sandbox Code Playgroud)
因此,User当给定三元组(Option[Int], String, String)作为参数时,此函数可以创建.
case class要n-tuple被写入DB.scala> User.unapply _
res7: User => Option[(Option[Int], String, String)] = <function1>
Run Code Online (Sandbox Code Playgroud)
此功能以相反的方式提供功能.给定用户它可以提取三元组.这种模式称为Extractor.在这里,您可以了解更多信息:http://www.scala-lang.org/old/node/112
| 归档时间: |
|
| 查看次数: |
4072 次 |
| 最近记录: |