所以情节如下:
目前我们有一个包含3个型号的开发网站。我们发现我们不喜欢我们的初始架构并添加了几行。我们重新生成了模式(doctrine:build-sql)。
现在它强制我们删除并重新创建所有表并转储回所有信息,因为没有创建ALTERS而只是CREATE语句。没问题......
更新模型的最大问题。在我们运行了一个build-all之后弹出了这么多错误,即“Widget sort not found”等等。我们发现我们需要重建模型。所以我们可以得到一个symfony学说:build-models课程课程(课程是表名...当然是模型)。这很有效,并修复了Symfony中断开的链接。
缺点是actions.class.php文件中的所有自定义代码都丢失了,而_form.php页面的自定义也是如此。
我的问题是,我们如何存储我们自己的操作,以便在更新模型架构时不会丢失它们?类似地,模板等会重新生成,但不会进行任何自定义。
在symfony中更新模型的架构肯定有一个简单的解决方案吗?
答案 0 :(得分:2)
找到我的答案。您不是按照说明更新模块,而是更新数据库的模型。您可以更改schema.yml文件并执行symfony migration
http://www.slideshare.net/denderello/symfony-live-2010-using-doctrine-migrations
答案 1 :(得分:0)
如果您只想要CRUD /最小化自定义,可以使用admin生成器执行此操作:
./symfony doctrine:generate-admin appname Course
常规模块一旦生成就无法更新而不会丢失自定义 - 它们只是一个起点。