使用 Play 2 和 Slick-Play 配置 Postgresql 连接
Configuring a Postgresql connection with Play 2 and Slick-Play
我正在学习如何使用 Scala 和 Play 2 Framemork 构建应用程序。我根据 "play-scala-intro" 当前模板使用激活工具创建了一个新项目。
该模板有一个使用 Play-Slick 1.0 管理依赖项的示例应用程序,并配置了一个 H2 数据库,运行没有问题。
当我尝试更改为 Postgres 数据库时,运行 遇到了麻烦。我收到错误 500,告诉我:
"Cannot connect to database [default]".
在堆栈跟踪中,异常是:
"Configured Slick driver org.postgresql.Driver is not an instance of
requested profile slick.profile.BasicProfile"
所以...我已经做了什么:
我在我的 build.sbt 文件中添加了依赖项:
"org.postgresql" % "postgresql" % "9.4-1201-jdbc41"
在我的配置文件(application.conf)中,数据库连接配置为:
slick.dbs.default.driver=org.postgresql.Driver
slick.dbs.default.db.url="jdbc:postgresql://localhost:5432/hello_play"
slick.dbs.default.db.user="postgres" slick.dbs.default.db.password=""
PS:我也试过 slick.dbs.default.driver="org.postgresql.Driver"...
PS2:我的数据库密码是空的。我连接 PgAdmin 没有问题
slick.dbs.default.driver
必须是圆滑的 driver,而不是 JDBC driver。您的数据库配置应如下所示:
slick.dbs.default.driver="slick.driver.PostgresDriver$"
slick.dbs.default.db.driver="org.postgresql.Driver"
slick.dbs.default.db.url="jdbc:postgresql://localhost:5432/hello_play"
slick.dbs.default.db.user="postgres"
slick.dbs.default.db.password=""
我正在学习如何使用 Scala 和 Play 2 Framemork 构建应用程序。我根据 "play-scala-intro" 当前模板使用激活工具创建了一个新项目。
该模板有一个使用 Play-Slick 1.0 管理依赖项的示例应用程序,并配置了一个 H2 数据库,运行没有问题。
当我尝试更改为 Postgres 数据库时,运行 遇到了麻烦。我收到错误 500,告诉我:
"Cannot connect to database [default]".
在堆栈跟踪中,异常是:
"Configured Slick driver org.postgresql.Driver is not an instance of requested profile slick.profile.BasicProfile"
所以...我已经做了什么:
我在我的 build.sbt 文件中添加了依赖项:
"org.postgresql" % "postgresql" % "9.4-1201-jdbc41"
在我的配置文件(application.conf)中,数据库连接配置为:
slick.dbs.default.driver=org.postgresql.Driver slick.dbs.default.db.url="jdbc:postgresql://localhost:5432/hello_play" slick.dbs.default.db.user="postgres" slick.dbs.default.db.password=""
PS:我也试过 slick.dbs.default.driver="org.postgresql.Driver"...
PS2:我的数据库密码是空的。我连接 PgAdmin 没有问题
slick.dbs.default.driver
必须是圆滑的 driver,而不是 JDBC driver。您的数据库配置应如下所示:
slick.dbs.default.driver="slick.driver.PostgresDriver$"
slick.dbs.default.db.driver="org.postgresql.Driver"
slick.dbs.default.db.url="jdbc:postgresql://localhost:5432/hello_play"
slick.dbs.default.db.user="postgres"
slick.dbs.default.db.password=""