如何从数据库中删除环回模型和引用
How to remove Loopback model and references from database
我从我的应用程序中完全删除了一个模型:从 models
中删除了 model.js
和 model.json
,删除了另一个模型中的关系,并从 model-config.json
中删除了它.
但是,为模型创建的 table 和其他模型中的列保留在数据库中(在所有环境中)。我试过自动迁移,但它们仍然存在。
我是否需要手动遍历所有数据库并手动删除 table 和列,或者我是否可以让 LB 以某种方式自行获取更改?
您是否考虑过使用内置 API?
https://apidocs.strongloop.com/loopback/#app-deletemodelbyname
最终手动完成 - 在 3 个数据库中:(
我正在关闭问题,但如果有人有好的答案,我愿意重新打开。
Do I need to manually go through all databases and drop the table and column manually, or can I tell LB to pick up the changes on its own somehow?
LoopBack 无法检测删除了哪些模型并删除相应的数据库表。
正如您自己发现的那样,解决方案是遍历数据库并手动删除表。
顺便说一句,我不建议在生产环境中使用 LoopBack 的 autoupdate/automigrate 功能,并且强烈建议维护一组迁移脚本,例如在 Martin Fowler 的优秀文章中 Evolutionary Database Design.
LoopBack 尚不支持迁移脚本,但我们正在讨论如何为 LoopBack 4+ 实现它们,请参阅 https://github.com/strongloop/loopback-next/issues/487
我从我的应用程序中完全删除了一个模型:从 models
中删除了 model.js
和 model.json
,删除了另一个模型中的关系,并从 model-config.json
中删除了它.
但是,为模型创建的 table 和其他模型中的列保留在数据库中(在所有环境中)。我试过自动迁移,但它们仍然存在。
我是否需要手动遍历所有数据库并手动删除 table 和列,或者我是否可以让 LB 以某种方式自行获取更改?
您是否考虑过使用内置 API? https://apidocs.strongloop.com/loopback/#app-deletemodelbyname
最终手动完成 - 在 3 个数据库中:(
我正在关闭问题,但如果有人有好的答案,我愿意重新打开。
Do I need to manually go through all databases and drop the table and column manually, or can I tell LB to pick up the changes on its own somehow?
LoopBack 无法检测删除了哪些模型并删除相应的数据库表。
正如您自己发现的那样,解决方案是遍历数据库并手动删除表。
顺便说一句,我不建议在生产环境中使用 LoopBack 的 autoupdate/automigrate 功能,并且强烈建议维护一组迁移脚本,例如在 Martin Fowler 的优秀文章中 Evolutionary Database Design.
LoopBack 尚不支持迁移脚本,但我们正在讨论如何为 LoopBack 4+ 实现它们,请参阅 https://github.com/strongloop/loopback-next/issues/487