【发布时间】:2021-08-12 21:52:23
【问题描述】:
当 slick 生成代码时,它是这样的(sample1/Tables.scala):
package sample1
object Tables extends {
val profile = ???
} with Tables
trait Tables {
case class Class1Row(num: Int)
}
我只想使用 play-json 转储 db 对象,所以我需要 OWrites(在 sample1/X.scala 中):
package sample1
import play.api.libs.json.{Json, Writes}
object X {
implicit val class1Writes: Writes[Tables.Class1Row] = Json.writes[Tables.Class1Row]
}
编译时报错:
sample1/X.scala:6:68
type mismatch;
found : Tables.this.Class1Row => Option[Int]
required: sample1.Tables.Class1Row => Option[Int]
implicit val class1Writes: Writes[Tables.Class1Row] = Json.writes[Tables.Class1Row]
当我已经在 val 赋值的两边都指定了相同的类型时,为什么会出现编译问题?
【问题讨论】:
标签: scala playframework slick play-json play-slick