Слик импортный алмазный оператор <> - PullRequest
0 голосов
/ 18 сентября 2018

Не могу найти импорт postgres для оператора slick <>. Я пытаюсь создать отображение для java.time.OffsetDateTime. Ошибка:

not found: value <>
  <> ((Bonus.apply _).tupled, Bonus.unapply _)

Мой * метод:

override def * = (id, name, createdAt) <> ((Bonus.apply _).tupled, Bonus.unapply _)

Мое OffsetDateTime отображение:

  implicit def zoneDateTime: TypedType[OffsetDateTime]  =
    MappedColumnType.base[OffsetDateTime, String](
      zdt => zdt.toString,
      date => OffsetDateTime.parse(date)
    )

Я считаю, import slick.jdbc.PostgresProfile.api._ должно работать, но это не так. Все работало нормально без OffsetDateTime и метода

override def * = (id, name, createdAt).mapTo[Bonus]

1 Ответ

0 голосов
/ 18 сентября 2018

Вам не хватает отображения для OffsetDateTime.Вы должны предоставить неявный JdbcType[OffsetDateTime] экземпляр.Драйвер Postgres по умолчанию AFAIR не предоставляет их вам, поэтому многие люди используют что-то вроде slick-pg .

Например, вам нужно что-то вроде

import com.github.tminglei.slickpg._

trait MyPostgresProfile extends ExPostgresProfile with PgDate2Support {

  override val api = MyAPI

  object MyAPI extends API with DateTimeImplicits
}

object MyPostgresProfile extends MyPostgresProfile

Конечно, вам нужно заменить все использования PostgresProfile на MyPostgresProfile.

...