【发布时间】:2016-12-28 19:31:51
【问题描述】:
我正在使用 Slick 3.1.1 和 Play 2.5.10 并拥有以下application.conf:
slick.dbs {
default {
driver="slick.driver.PostgresDriver$"
db.driver="org.postgresql.Driver"
db.url="jdbc:postgresql://localhost:5432/exampledb?searchpath=public"
db.user="postgres"
db.password="postgres"
}
test {
driver="slick.driver.H2Driver$"
db.driver="org.h2.Driver"
db.url="jdbc:h2:mem:test;MODE=PostgreSQL"
db.username="sa"
db.password=""
}
}
为了测试我的 Daos,我想使用进化创建一个测试数据库,所以我这样做了:
package dao
import org.scalatest.BeforeAndAfter
import play.api.db.evolutions.Evolutions
trait BeforeAndAfterDao extends BeforeAndAfter {
before {
Evolutions.applyEvolutions("test") // <<< doesn't compile, needs Database instance
}
after {
Evolutions.cleanupEvolutions("test") // <<< doesn't compile, needs Database instance
}
}
但不幸的是,我需要创建一个play.api.db.Database 以传递给apply/cleanupEvolutions。如何从application.conf 构建所需的数据库实例?
【问题讨论】:
标签: scala playframework slick