如何禁用一个数据库的演变

How to disable evolutions for one database

我有 play-java 项目,其中两个数据库通过 ebean 连接。第一个数据库通过演化进行管理,第二个数据库仅用于只读,我无权对其进行任何更新。 所以我必须只为第二个数据库禁用进化。

目前我已经花了一些时间,但没有找到任何解决方案,只有来自 stackoveflow 的误导性建议和来自 github 站点上的 playframework 问题通信列表的混淆。据我所知,此功能将在新的尚未发布的 playframework 2.4 版中可用。

我只是想知道这里应该有某种解决方法,但我找不到任何解决方法。我有迫切的新功能请求,但没有解决方法。

我看到的相关问题很少,但这些问题已经很老了。我希望从那时起有所改变。

问候 雷米斯 B

Play Extras 能够应用增强的 evolutions 插件,并且适用于 Play 2.0 应用程序。

Enhanced Evolutions plugin that does locking so your dynos dont stomp on each other (will be in Play soon) and enable/disable evolutions per db.

您可以通过在构建文件中添加以下内容来添加插件

val extras = RootProject(uri("git://github.com/sclasen/play-extras.git"))

val main = PlayProject(appName, appVersion, appDependencies, mainLang = SCALA, settings = Defaults.defaultSettings ++ buildSettings).dependsOn(extras)

您需要禁用 Play 中的默认进化插件。

evolutionplugin=disabled

可以找到有关如何使用 evolutions 插件的更多信息 here