我写了这个行转换器。
implicit def rowToStringSequence: Column[Seq[String]] = Column.nonNull { (value, meta) =>
val MetaDataItem(qualified, nullable, clazz) = meta
value match {
case data: Seq[String] => Right(data)
case _ => Left(TypeDoesNotMatch(
"Cannot convert " + value + ":" + value.asInstanceOf[AnyRef].getClass +
" to String Array for column " + qualified))
}
}
不幸的是,我不知道如何在案例类中使用它。例如:
case class profile ( eyeColor: Seq[String] )
配置文件配套对象:
object Profile{
val profile= {
get[Seq[String]]("eyeColor") map {
case
eyeColor => Profile(eyeColor)
}
}
}
编译错误消息为:找不到参数提取器的隐式值:Anorm。列[序列[字符串]]
我需要一个提示。
谢谢!!
anorm.Column
用于将JDBC数据转换为所需的Scala类型。所以第一个问题是你想将哪种JDBC转换为Seq[String]
(而不是本身是JDBC类型)。