在我的持久性代码中,所有表格等。我有以下导入
import scala.slick.driver.PostgresDriver.simple._
这很好,因为它有效,但这是一个问题,因为我的所有代码都专门绑定到 Postgres。例如,如果我想让我的产品做 Postgres 并且我的测试是 HSQLDB,我不能。我想在运行持久性管理器(它将执行创建)而不是在表声明时声明哪个数据源/驱动程序。我错过了什么?
在我的持久性代码中,所有表格等。我有以下导入
import scala.slick.driver.PostgresDriver.simple._
这很好,因为它有效,但这是一个问题,因为我的所有代码都专门绑定到 Postgres。例如,如果我想让我的产品做 Postgres 并且我的测试是 HSQLDB,我不能。我想在运行持久性管理器(它将执行创建)而不是在表声明时声明哪个数据源/驱动程序。我错过了什么?
这当然可以使用蛋糕图案。我的团队在开发中使用 H2,在生产中使用 MySQL。
请参阅https://github.com/slick/slick-examples中的 MultiDBExample 和 MultiDBCakeExample
据我所知,我认为这是 Slick 的明确限制。以至于我放弃了我的测试环境数据库并将其切换到与我的生产环境相同的类型。回想起来,这是我一开始就应该做的,但我明白这有时说起来容易做起来难。