DB插件未在Play 2.0中注册

Ple*_*exQ 10 scala anorm playframework-2.0

我刚刚开始使用play,我修改了我正在进行SQL读取的方式,现在我收到以下错误:

[Exception: DB plugin is not registered.]
Run Code Online (Sandbox Code Playgroud)

我给这个类的代码是:

package models

import play.api.db._
import play.api.Play.current

import anorm._

case class Housing(id: Long, rent: String, address: String, street0: String, street1: String, neighbourhood: String)

object Housing {

  def all(): List[Housing] = DB.withConnection { implicit c =>
    SQL("select * from housing")().map { row =>
      Housing(row[Long]("id"), row[String]("rent"), row[String]("address"), row[String]("street0"),
        row[String]("street1"), row[String]("neighbourhood"))
    }.toList
  }

  def create(rent: String, address: String, street0: String, street1: String, neighbourhood: String) {}

  def delete(id: Long) {}

}
Run Code Online (Sandbox Code Playgroud)

我不确定这甚至是最好的方法,但使用〜链似乎我最终会复制一堆东西.

Ple*_*exQ 13

原来在application.conf中以某种方式表示:

dbplugin=disabled
Run Code Online (Sandbox Code Playgroud)

出现了.不确定,我知道我没有把它放在那里,但是将它注释掉并修复JDBC Url中剩余的配置错误修复了这个问题!


Han*_*xue 13

只需确保提供数据库配置即可.例如,如果您使用的是Play Framework教程,请取消注释此部分.

# Database configuration
# ~~~~~ 
# You can declare as many datasources as you want.
# By convention, the default datasource is named `default`
#
# db.default.driver=org.h2.Driver
# db.default.url="jdbc:h2:mem:play"
# db.default.user=sa
# db.default.password=""**
Run Code Online (Sandbox Code Playgroud)

有关更多信息,请参阅Play Framework数据库配置