我的自定义ID字段:
case class UserId(value: String) extends MappedTo[String]
case class User(id: UserId)
class UserSchema(tag: Tag) extends Table[User](tag, "user") {
def id = column[String]("id", O.PrimaryKey, O.Length(25))
def * = (id) <>(User.tupled, User.unapply)
}
我不能像这样使用id字段:
def find(id: UserId) = {
DbTables.users.filter(_.id === id).result.headOption
}
如果id字段为String
,则有效。它不适用于自定义ID字段。