При использовании формы Slick CaseClass в настоящее время я сталкиваюсь с ситуацией, когда по соображениям эффективности предложения groupBy мне нужны три столбца, которые будут храниться в реляционной модели, тогда как только два поля существуют в моей объектно-ориентированная модель (третий вычисляемой)CaseClassShape для модели с вычисленными свойствами
case class MyEntry(quantity:Double, time:LocalDateTime){
val weight = time.getHour match {
case x if x>=7 && x<=23 => 0.1
case _ => 0.05
}
}
case class LiftedMyTuple(quantity:Rep[Double],time:Rep[LocalDateTime], weight:Rep[Double])
implicit object MyEntryShape extends CaseClassShape(???,???)
class MyTableRow(tag:Tag) extends Table[MyEntry](tag, "MY_TABLE"){
def quantity = column[Double]("QUANTITY")
def time = column[LocalDateTime]("TIME",O.PrimaryKey)
def weight = column[Double]("WEIGHT")
def * = LiftedMyTuple(quantity,time,weight)
}
Как можно написать CaseClassShape для такого использования, где класс случае имеет вычисленное свойство, которое должно отображаться в реляционной модели?
Вы пробовали: 'case class MyEntry (количество: Double, time: LocalDateTime, _ignoreStoredWeight: Double) {...}'? – cvogt