【问题标题】:custom marshalling of cassandra column using phantom dsl使用幻象 dsl 自定义编组 cassandra 列
【发布时间】:2017-08-06 22:50:11
【问题描述】:

我想定义一个新的列/转换器来将案例类编组为原始类型,然后使用 phantom dsl 再次返回。

在 slick 3.1.1 中我可以轻松做到这一点:

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

这让我可以在灵活查询的任何地方使用Id,它会被隐式地来回转换。

我试图通过扩展AbstractColumn(和其他)来导出我自己的列和转换,但没有运气。

我如何在 phantom dsl 中做到这一点。

【问题讨论】:

    标签: scala cassandra phantom-dsl


    【解决方案1】:

    对于迟到的回复深表歉意,您只需使用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)
      }
    }
    

    【讨论】:

      猜你喜欢
      • 2017-02-19
      • 2017-05-20
      • 2018-12-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-12-29
      • 1970-01-01
      相关资源
      最近更新 更多