Playframework 2.0 倒退

Playframework 2.0 倒退,playframework-2.0,revert,playframework-evolutions,Playframework 2.0,Revert,Playframework Evolutions,这个问题可能看起来很愚蠢,但我找不到任何关于如何在Play 2.0中回滚进化的指导。谷歌只找到一些页面,上面写着进化文件中的“Downs”部分就是用来做这些的,仅此而已。任何指针或指令都将受到欢迎。向下部分主要用于在脚本发生更改时还原演变。也就是说,您有一个将2.sql应用于数据库的项目,然后由于合并,2.sql在源代码中被修改。Play将在旧版本上运行Downs,然后在新的2.sql上运行Ups,以确保数据库与代码库同步 据我所知,无法单独触发Downs,因为演进的目的是准备数据库使用您的代码

这个问题可能看起来很愚蠢,但我找不到任何关于如何在Play 2.0中回滚进化的指导。谷歌只找到一些页面,上面写着进化文件中的“Downs”部分就是用来做这些的,仅此而已。任何指针或指令都将受到欢迎。

向下部分主要用于在脚本发生更改时还原演变。也就是说,您有一个将2.sql应用于数据库的项目,然后由于合并,2.sql在源代码中被修改。Play将在旧版本上运行Downs,然后在新的2.sql上运行Ups,以确保数据库与代码库同步

据我所知,无法单独触发Downs,因为演进的目的是准备数据库使用您的代码,仅应用一个Downs步骤将使应用程序处于不一致的状态,并产生许多潜在错误


如果您真的需要还原某些内容,那将是一个新的演进(3.sql)Ups将执行所需的更改。

对于play 2.4.x,根据play文档,您只需在测试后调用
Evolutions.cleanupEvolutions(数据库)
。看这里

你看到这个文件了吗?是的,我读过它,但它没有说一句话关于使用
Downs恢复进化部分。我可能遗漏了一些东西,但实际上,在最后一个注释段落中提到了唯一一个稍微相关的主题,它说“在开发模式下,简单地丢弃开发数据库并从头开始重新应用所有演变通常更简单。”。如果我错了,请告诉我。《代码》的目的是什么!Downs
进化?“Downs部分主要用于在脚本更改时还原进化。”