Scala-Projektionen in Slick für nur eine Spalte

Ich folge demBeispiel für eine übersichtliche Dokumentation zum automatischen Inkrementieren von Feldern und ich habe Probleme beim Erstellen eineszugeordnete Projektion das ... nun ja, hat nur eine Spalte.

case class UserRole(id: Option[Int], role: String)

object UserRoles extends Table[UserRole]("userRole") {
  def id = column[Int]("ID", O.PrimaryKey, O.AutoInc)
  def role = column[String]("ROLE")
  // ...
  def * = id.? ~ role <> (UserRole, UserRole.unapply _)
      // NEXT LINE ERRORS OUT
  def forInsert = role <> ({t => UserRole(None, t._1)}, {(r: UserRole) => Some((r.role))}) returning id   
}

Der Fehler lautet "Wert <> ist kein Mitglied von scala.slick.lifted.Column [String]".

Ich dachte auch, es wäre effizienter, mein Schema so zu gestalten:

case class UserRole(role: String)

object UserRoles extends Table[UserRole]("userRole") {
  def role = column[Int]("ROLE", O.PrimaryKey)
  // ...
  def * = role <> (UserRole, UserRole.unapply _)

}

Aber dann bekomme ich auch den gleichen Fehler wie oben. "value <> ist kein Mitglied von scala.slick.lifted.Column [String]"

Was mache ich eigentlich Habe ich einfach keineProjektion mehr, weil ich nur eine spalte habe? Wenn ja, wassollte Mache ich

Antworten auf die Frage(1)

Ihre Antwort auf die Frage