2013-12-15 7 views
9

मैं slick 2 पर माइग्रेट करने पर काम कर रहा हूं लेकिन मैं एक कक्षा में आया हूं जिसे मैं कहीं भी नहीं ढूंढ सकता।Slick 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

तालिका की परिभाषा की जांच करना हम देख सकते हैं कि यह Tag: Table definition है, यह नहीं पता कि आपने कहां पढ़ा है या पाया है कि यह Option[String] है। Tag definition

तो अपने सवाल का जवाब देने में यह scala.slick.lifted पैकेज से आ रहा है:

Tag पर क्लिक करने से टैग परिभाषा को लाता है।

आपको वास्तव में Tag बनाने की आवश्यकता नहीं होगी, क्योंकि आप val suppliers = TableQuery[Suppliers] निर्माण के साथ क्वेरी करते हैं, जो सभी Tag संबंधित सामग्री का ख्याल रखता है।

संबंधित मुद्दे