2017-03-15 17 views
0

我想定義一個新的列/轉換器將一個案例類編組爲一個基元類型,並使用幻影dsl再次回來。自定義編組的cassandra列使用幻像dsl

在光滑3.1.1我可以很容易地做到這一點:

implicit val idTypeMapper = MappedColumnType.base[Id, Long](
    { (v) ⇒ v.value }, 
    { (s) ⇒ Id(s) } 
) 

這讓我在光滑的查詢中使用Id的任何地方,它會隱式轉換來回。

我試圖通過擴展AbstractColumn(和其他),但沒有運氣,以幻像的方式派生自己的列和轉換。

我該如何在幻影dsl中做到這一點。

回答

0

對於遲到的回覆表示歉意,您只需使用Primitive.derive。有關official docs的更多詳細信息。

import com.outworkers.phantom.dsl._ 

case class Test(value: String) 

object Test { 
    implicit val testPrimitive: Primitive[Test] = { 
    Primitive.derive[Test, String](_.value)(Test.apply) 
    } 
}