【发布时间】:2014-11-23 21:30:28
【问题描述】:
我正在尝试开发一个系统来访问由另一个系统管理和更新的架构,因此数据库架构可能会独立于我的系统而改变。不太可能是新表或删除列,更多的是添加新列。
有没有一种方法可以在将列添加到架构时自动更新我的域类,最好是通过调用 Web 服务,然后这个 Web 服务更新域类?即使它是一个 CLI 命令,也比手动更改代码要好。我知道您可以自动构建(构建视图和控制器),但无论如何都要检查架构并查找新列,然后将新属性添加到域类中?
我查看了各种插件和页面,包括db-reverse-engineer(与 2.4.3 不兼容)、database-migration(似乎更多用于在域类更改后更新数据库)和dynamic-domain-class(似乎创建了全新的域类,而不仅仅是更新属性)。
目前,我能想到的唯一方法是自己运行一些自定义 sql 来检查架构,拉回列名、类型和约束,然后使用动态域类插件制作我自己的动态领域类。但这似乎很混乱。
我想从本质上了解域类名称,但有一个与域类属性无关的系统,这样我就可以在运行时根据域类的属性(自动脚手架)动态构建一个 gui。
提前感谢您的任何想法/建议。
【问题讨论】:
标签: database grails schema auto-generate