【发布时间】:2009-07-25 12:05:48
【问题描述】:
我一直在 symfony 中测试 Doctrine 迁移,我终于让它们工作了,但我注意到这些迁移只会更新数据库。表单和模型没有像我预期的那样更新......
这正常吗?如果正常,有没有办法用对数据库所做的更改来更新模型?
【问题讨论】:
标签: php symfony1 migration doctrine
我一直在 symfony 中测试 Doctrine 迁移,我终于让它们工作了,但我注意到这些迁移只会更新数据库。表单和模型没有像我预期的那样更新......
这正常吗?如果正常,有没有办法用对数据库所做的更改来更新模型?
【问题讨论】:
标签: php symfony1 migration doctrine
这是正常的。
要更新模型/表单/过滤器等,您可以运行
./symfony doctrine:build-all
任务。
在开发过程中,您可能正在将夹具加载到您的数据库中,因此将使用教义加载它们:data-load(或使用 build-all-reload 任务)。
但是,一旦您的应用程序投入生产,您显然不想在每次更改数据库架构时都放弃所有数据。这就是迁移的用武之地。
我的流程是:
【讨论】:
来自 php symfony 1.4 php symfony 学说:构建帮助菜单
You must include one or more of the following build options:
--all、--all-classes、--model、--forms、--filters、--sql、--db
有关更多信息,请参阅此任务的帮助页面:
php symfony help doctrine:build
你可以用这个更细粒度,只构建 --model --forms --filters 等。
如果你 build-all,你将丢失数据库中的所有数据,因为它会重建数据库。
【讨论】: