2013-12-15 65 views
9

我正在遷移到浮油2,但我遇到了一個我無法在任何地方找到的類。浮油2.0.0-M3表格定義 - 標籤屬性的說明

package learningSlick 

import scala.slick.driver.MySQLDriver.simple._ 

case class Supplier(snum: String, sname: String, status: Int, city: String) 

class Suppliers(tag: Option[String]) extends Table[Supplier](tag, "suppliers") { 
    def snum = column[String]("snum") 
    def sname = column[String]("sname") 
    def status = column[Int]("status") 
    def city  = column[String]("city") 
    def * = snum ~ sname ~ status ~ city <> (Supplier, Supplier.unapply _) 
} 

以下是本教程的代碼:

import scala.slick.driver.PostgresDriver.simple._ 

class Suppliers(tag: Tag) extends Table[(String, String, Int, String)](tag, "suppliers") { 
    def snum = column[String]("snum") 
    def sname = column[String]("sname") 
    def status = column[Int]("status") 
    def city = column[String]("city") 
    def * = (snum, sname, status, city) 
} 

在定義表它說,標籤的類型選項[字符串]然而在教程中,我會通過它只是使用一種標籤。我正在尋找這是從哪裏來的。

回答

9

檢查表的定義,我們可以看到它的類型TagTable definition不知道你在哪裏閱讀或發現它是Option[String]類型。

點擊Tag帶來了標籤定義:Tag definition

因此,要回答你的問題它從scala.slick.lifted包來。

您不需要實際創建Tag,因爲您使用val suppliers = TableQuery[Suppliers]構造進行查詢,該構造負責處理所有Tag相關內容。