6

Grails在 IntellijIDEA 11.1.3 中创建了新项目并尝试运行它。

当我打开http://localhost:8080/application/dbdoc(访问控制器的默认操作grails.plugin.databasemigration.DbdocController)时,我不断收到消息:

Changelog changelog.groovy not found

虽然,文件changelog.groovy存在于我的项目的文件系统中的文件夹中./grails-app/migrations。我已经生成了它,使用命令:

grails dbm-create-changelog changelog.groovy 

现在它具有以下内容:

databaseChangeLog = {
    changeSet(author: "Edward (generated)", id: "changelog") {
        // TODO add changes and preconditions here
    }
}

我需要做什么才能让它工作?

4

1 回答 1

6

我也在运行 IntelliJ 11.1.3。我正在使用 Grails 2.1 和database-migration:1.1.

database-migration 插件用于创建更改日志 Groovy 脚本,可用于在 X 点及时迁移数据库,以与您对 Grails 应用程序所做的新代码更改兼容。

例如,如果您的 Grails 应用程序今天正在生产中,带有您的域类、表等,并且您运行grails dbm-create-changelog changelog.groovy,这将为您提供基线 changelog.groovy 脚本。然后你应该运行grails dbm-changelog-sync以表明你是最新的。

假设您添加了新的域类并在现有的域类上修改了字段。如果您一直在维护您的变更集并运行grails dbm-update,则数据库迁移插件将根据这些变更集更新您的数据库模式。

这是我正在阅读/关注的优秀教程(不是我的),以了解有关数据库迁移插件的更多信息:Grails DB-Migration Plugin Tutorial

于 2012-08-20T19:18:08.660 回答