3

Slickにテーブル定義があります:

object ADB {
  extends BaseDB[A]("a")
  with PostgresDriver{
  def id = column[Long]("id", O.PrimaryKey)
  def name = column[String]("name")
  ...
  def * = id ~ name ~ ... <> (A.apply _, A.unapply _)

  def forSelect = id ~ name
}

forSelectを照会する際に参照することはできAますか?

forSelect将来的にトレイトにプッシュできるように、選択するフィールドのリストを 1 か所に保持したいと考えています。

4

2 に答える 2

0

ちょうど試して

...map(ADB.forSelect)

また

for( ... ) yield ADB.forSelect

以下は私のために働いた:

import scala.slick.driver.H2Driver.simple._
import Database.threadLocalSession


object ADB extends Table[(Long, String)]("a") {
  def id = column[Long]("id", O.PrimaryKey)
  def name = column[String]("name")
  def * = id ~ name 

  def forSelect = id ~ name
}

Database.forURL("jdbc:h2:mem:test1", driver = "org.h2.Driver") withSession {
  ( for( a <- ADB ) yield ADB.forSelect ).list
}
于 2013-06-26T08:14:57.950 に答える