【发布时间】:2015-10-24 05:10:29
【问题描述】:
Slick 对HList 的支持通常是一件很棒的事情。不幸的是,它有自己的实现,几乎没有提供任何有用的操作。因此,我想改用 shapeless HList。这应该是“trivial”,但我不知道如何做到这一点。在网上搜索我没有发现任何证据表明有人设法完成了这项任务。
我认为实现ProvenShape(如广告here)就足够了,但是由于我无法理解Slick's (Proven)Shapes 的概念,我没有管理实现这个.
我的主要目标是煮这个
class Users( tag: Tag )
extends Table[Long :: String :: HNil]( tag, "users" )
{
def id = column[Long]( "id", O.PrimaryKey, O.AutoInc )
def email = column[String]( "email" )
override def * = ( id, email ) <>[TableElementType, ( Long, String )](
_.productElements,
hlist => Some( hlist.tupled )
)
}
下到
class Users( tag: Tag )
extends Table[Long :: String :: HNil]( tag, "users" )
{
def id = column[Long]( "id", O.PrimaryKey, O.AutoInc )
def email = column[String]( "email" )
override def * = id :: email :: HNil
}
【问题讨论】:
-
不是答案,但这个帖子看起来很相关:github.com/slick/slick/issues/519
标签: scala slick shapeless hlist