kba*_*man 11 database enums scala slick
这个问题已被提出并回答了光滑的1和2,但答案似乎对光滑3无效.
试图在Scala Slick中如何使用Enums中的模式?,
object MyEnumMapper {
val string_enum_mapping:Map[String,MyEnum] = Map(
"a" -> MyEnumA,
"b" -> MyEnumB,
"c" -> MyEnumC
)
val enum_string_mapping:Map[MyEnum,String] = string_enum_mapping.map(_.swap)
implicit val myEnumStringMapper = MappedTypeMapper.base[MyEnum,String](
e => enum_string_mapping(e),
s => string_enum_mapping(s)
)
}
Run Code Online (Sandbox Code Playgroud)
但是MappedTypeMapper
从光滑1开始就没有可用,并且MappedColumnType
光滑2 的建议不再可用,尽管这里有记录.
最新的最佳做法是什么?
Rom*_*man 13
你的意思MappedColumnType
是什么不再可用?它带有通常的驱动程序导入.使用enum将字符串映射到字符串MappedColumnType
非常简单:
object MyEnum extends Enumeration {
type MyEnum = Value
val A = Value("a")
val B = Value("b")
val C = Value("c")
}
implicit val myEnumMapper = MappedColumnType.base[MyEnum, String](
e => e.toString,
s => MyEnum.withName(s)
)
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
4280 次 |
最近记录: |