问题
I am still developing first version of my application on play 2. How could I regenerate evolution scripts?
回答1:
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
回答2:
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
来源:https://stackoverflow.com/questions/10806926/regenerate-evolution-scripts-in-play-2