为抽象类Scala Slick创建映射列类型
我正在尝试为我拥有的抽象案例类创建一个为抽象类Scala Slick创建映射列类型,scala,slick,slick-2.0,Scala,Slick,Slick 2.0,我正在尝试为我拥有的抽象案例类创建一个MappedCOlumnType sealed abstract class Address(address: String) implicit val addressToString = MappedColumnType.base[Address, String]( addr => addr.address, addr => AddressUtil.address(addr) ) 但我收到一个编译器错误,说明: value addre
MappedCOlumnType
sealed abstract class Address(address: String)
implicit val addressToString = MappedColumnType.base[Address, String](
addr => addr.address,
addr => AddressUtil.address(addr)
)
但我收到一个编译器错误,说明:
value address is not a member of com.suredbits.core.protocol.Address
[error] Note: implicit value addressToString is not applicable here because it comes after the application point and it lacks an explicit result type
[error] {addr => addr.address } , { addr => AddressUtil.address(addr) }
当我将
地址
明确声明为case类中的字段时。我觉得这对我来说可能是一个极其愚蠢的错误。为什么我的地址字段不可见 示例中的地址
是构造函数的私有地址。要使用getter将其公开,请在其前面添加val
,如下所示:
sealed abstract class Address(val address: String)
嗯