我一直在 symfony 中测试 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 您将丢失数据库中的所有数据,因为它会重建数据库。