我用的是slick 2.0 rc 我已经定义了字段 UserId:
case class UserId(id: Long) extends AnyVal with BaseId
object UserId extends IdCompanion[UserId]
当我使用它时:
class Resources(tag: Tag) extends Table[Resource](tag, "RESOURCE") {
def id = column[Long]("ID", O.PrimaryKey, O.AutoInc)
def owner = column[UserId]("Owner")
def types = column[String]("Type")
def withuser = foreignKey("User_FK", owner, Users)(_.id)
它给我编译错误为:
[error] C:\assigment\slick-advanced\app\models\Resource.scala:15: could not find
implicit value for parameter tm: scala.slick.ast.TypedType[models.UserId]
[error] def owner = column[UserId]("Owner")
最佳答案
您不需要对象 UserId。您需要一个描述映射的隐式。请参阅http://slick.typesafe.com/doc/2.0.0-RC1/userdefined.html
关于scala - 在 slick 2.0 上,我发现无法存储用户定义的字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20827533/