我试图理解一些滑头的工作和它需要什么。
举个例子:
package models
case class Bar(id: Option[Int] = None, name: String)
object Bars extends Table[Bar]("bar") {
def id = column[Int]("id", O.PrimaryKey, O.AutoInc)
// This is the primary key column
def name = column[String]("name")
// Every table needs a * projection with the same type as the table's type parameter
def * = id.? ~ name <>(Bar, Bar.unapply _)
}
有人能解释一下 *
方法的用途吗? 什么是 <>
,为什么是 unapply
?什么是投影方法 ~
’返回 Projection2
的实例?