3

目前,我的变阵以两种方式使用(在播放2的应用程序!):如何使用数据库变阵在生产模式?

  1. 它们被用来定义
  2. 它们被用来填充一些默认值的数据库的数据库的结构。

唐斯通常破坏任何改变UPS可能已经完成。我没有使用prod模式中的演变,但我知道它们在应用程序启动时被应用。

这是否意味着在更新应用程序会导致变阵重新应用,从而使我失去我的所有数据?如果是这样,我该如何避免这种情况?

+1

“当激活演变时,Play会在DEV模式下的每个请求之前,或在PROD模式下启动应用程序之前检查您的数据库模式状态。”据我所知,只有新的演变将应用于此情况下,不是整个数据库从头开始重新创建。 –

回答

4

如果你能够在生产模式演变,脚本的丘陵部分将不会被执行。对于您需要删除第2评论通过conf /变阵/默认/ 1.SQL行禁用自动生成的演变文件:

# --- Created by Ebean DDL 
# To stop Ebean DDL generation, remove this comment and start using Evolutions 

# --- !Ups 
... 

您也可以看看这个问题的更多细节: Play! framework - database issue with Evolutions

相关问题