我即将开始一个新项目,将使用Play! 2框架和Scala编程语言,可能会使用Squeryl作为ORM(但如果Slick及时准备好了的话,也可以使用它)。
现在,Play!有一个升级数据库的功能,使用迁移。不幸的是,这些迁移是用SQL编写的。这不仅不方便(我希望能够用Scala编写迁移),而且存在两个问题:
- 首先,我需要自己编写迁移。我习惯于使用South,它能够通过查看我的模型的当前和以前的定义来推断模式迁移;
- 其次,处理数据迁移会非常麻烦。人们可能需要以编程方式修改数据,这甚至在纯SQL中也无法实现。
因此,我正在寻找替代方案。我没有找到任何Scala ORM的迁移工具,能够自动生成模式迁移,请问是否有这样的工具?
我能找到的最好的工具是Scala migrations。有没有办法让Play!自动使用它来代替自己的迁移工具?