2014-03-03 75 views
1

我的模式是:为什么slick2.0找不到playframework 2.2.1 TableQuery类?

import scala.slick.driver.PostgresDriver.simple._ 
import scala.slick.lifted.TableQuery 


class User(tag: Tag) extends Table[(Int, String, String)](tag, "User") { 
def id = column[Int]("SUP_ID", O.PrimaryKey) 
def name = column[String]("SUP_NAME") 
def street = column[String]("STREET") 
def * = (id, name, street) 
} 

//val users = TableQuery[Users] 
val users=TableQuery[User] 

我这样做是遵循

http://slick.typesafe.com/doc/2.0.1-RC1/gettingstarted.html#slick-examples

的例子,当我编译错误是:

[myslickclick] $ compile 
[info] Compiling 9 Scala sources and 1 Java source to C:\assigment\myslickclick\ 
target\scala-2.10\classes... 
[error] C:\assigment\myslickclick\app\model\User.scala:15: expected class or obj 
ect definition 
[error] val Users=TableQuery[User] 
[error]^
[error] one error found 
[error] (compile:compile) Compilation failed 
[error] Total time: 0 s, completed 03/03/2014 3:55:49 PM 

我用光滑2.0.1 RC1 。我认为这是一样的,但仍然无法识别类。

回答

1

那是因为你不能的类或对象外部声明值。

val users=TableQuery[User]应该是一个对象,就像一个UserDAO

object UserDAO { 
    val users = TableQuery[User] 

    def all: ... 

    def byId: ... 
}