2013-09-28 2 views
1

У меня есть следующие в библиотеке:Скала сликовое Постижение вопросы

Case Класс:

case class Foo(
    id: Option[Long], 
    bar: Long 
... 
) 

Таблица:

object Foos extends Mapper[Foo]("foo"){ //I'm using slick-inegration so the id is free 
    def bar = column[Long]("bar") 
    def cols = bar ~ ... 
    def * = id.? ~: cols <> (Foo, Foo.unapply _) 
    def returningId = cols returning id 
    def insert(f: Foo)(implicit s: Session) = returningId.insert(Generic[Foo].to(f).tail.tupled) 

... 
} 

слой доступа к данным устанавливается в бинарный файл, который использует эти модели. Если я попытаюсь понять, например, «for (f < -Foos) yield f», внутри определения Foos мы счастливы. Если бы я попробовать его где-нибудь в коде, который использует эту библиотеку, я получаю:

value map is not a member of object DB.this.Foos 

Я думаю, это не становится снят в Query, но я не совсем уверен. Любая ясность будет оценена по достоинству.

ответ

1

Try делает:

import slick.driver.MySQLDriver.simple._ 

или какой драйвер это то, что вам нужно. Вам понадобятся неявные классы для предоставления метода расширения 'map' на Foos.

+0

Это решение. Хотелось бы, чтобы это было документировано лучше :). Благодаря! – kelf

+0

Добро пожаловать! Поиск правильного импорта иногда может быть немного болезненным в Scala, было бы здорово, если бы в них было больше примеров, но, к счастью, у нас есть StackOverflow. ;) – eriksensei

Смежные вопросы