Regenerate evolution scripts in play 2

2019-01-19 19:57发布

I am still developing first version of my application on play 2. How could I regenerate evolution scripts?

2条回答
老娘就宠你
2楼-- · 2019-01-19 20:33

Using play 2.4, Slick 3.0.3 & postgres the *.sql files placed in the evolution folder were automatically generated in Heroku using the following setup:

in build.sbt:

  "com.typesafe.play" %% "play-slick" % "1.0.1",
  "com.typesafe.play" %% "play-slick-evolutions" % "1.0.1",
  "com.typesafe.slick" %% "slick" % "3.0.3",
  "org.postgresql" % "postgresql" % "9.4-1201-jdbc41",
  "org.slf4j" % "slf4j-nop" % "1.6.4",

in application.conf:

slick.dbs.default.driver ="slick.driver.PostgresDriver$"
slick.dbs.default.db.dataSourceClass = "slick.jdbc.DatabaseUrlDataSource"
slick.dbs.default.db.properties.driver = "org.postgresql.Driver"

and in Procfile:

-Dplay.evolutions.db.default.autoApply = true

Cheers

查看更多
Anthone
3楼-- · 2019-01-19 20:44

Disclaimer: it will destroy your existing database and create new one!

The auto-evolution will auto-regenerate when:

  • you are running your app in the dev mode
  • in application.conf you have this line not commented : ebean.default="models.*"
  • there is only one file in your evolutions folder and it's 1.sql
  • it has this comment at the beginning:

# --- Created by Ebean DDL

查看更多
登录 后发表回答