1

我正在使用 Grails 插件 - Amazon S3 插件 - 并且插件提供的域对象未指定 Id 生成器。我正在使用 Postgresql 并要求 id 生成器是身份。

我可以在我的插件目录中复制插件并弄乱提供的域对象,但这听起来不像是一个干净的方法。我可以在运行时添加正确的 id 生成吗?或者也许有更好的方法。

4

2 回答 2

3

如果您使用的是 1.2,您可以为所有 GORM 类提供默认映射,包括生成器。

grails.gorm.default.mapping = {
   id generator:'sequence'
}

在1.2 发行说明中查看更多信息。

于 2010-01-09T16:31:43.833 回答
1

我认为您可以只将 S3Asset.groovy 复制到 src/groovy/ 中。从内存中,您的类应该覆盖插件提供的类。我已经使用这种技术来调整几个插件,直到错误被修复。但我还没有尝试过仅使用 *GrailsPlugin.groovy 文件的域类。

此外,Jean 的上述建议是一个很好的建议!

干杯

于 2010-01-10T05:06:49.120 回答