我一直在尝试CakePHP的一些迁移脚本,但我遇到了所有这些或其他形式的问题。CakePHP良好的数据库迁移?
请给我一个关于您使用现场和已知作品的Cake的迁移选项的建议。
我想下面的“功能”:
- 支持CakePHP的1.2(如CakeDCs迁移将只有一个选项时,1.3是稳定的,我的应用程序迁移到新的源代码)
- 支持(或者至少不停止)具有不同数据库配置的模型。在app /型号的子文件夹
- 支持模式在插件
- 支持表不符合蛋糕公约(我有没有一个单一的主键字段,需要一些特殊的表
- 支持机型以保持它们)
- 可以通过Capistrano和Git进行自动部署。
我不需要rails风格的版本控制文件一个git版本化的模式文件可以与现有模式相比较。那就是:我喜欢Cake中的SchemaShell,因为它不符合我上面的大多数要求。
我已经看过并测试:
- CakePHP的架构壳牌http://book.cakephp.org/view/734/Schema-management-and-migrations
- CakeDC迁移http://cakedc.com/downloads/view/cakephp_migrations_plugin
- YAML迁移http://github.com/georgious/cakephp-yaml-migrations-and-fixtures
- joelmoss迁移http://code.google.com/p/cakephp-migrations
+1,有趣的问题 – 2010-03-26 12:29:50
通过忽略文档并阅读源代码,我发现如何使Schema Shell完成我所需要的大部分工作。 我发现-f不会“强制”生成'来创建新的模式。“。它用于“强制生成所有表到模式中......”。 但不仅如此,这不在文档中:它也可用于强制更新以与生成相同的方式忽略Model类,因此更新使用该选项生成的模式。 – 2010-03-26 13:35:54
@Matin威斯汀 - 为什么不把这些见解贡献给文档维基? – stevenf 2010-03-26 16:47:54