2010-01-09 53 views
1

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

我可以将插件复制到我的插件目录中,并与提供的域对象混淆,但听起来不像一个干净的方法。我可以在运行时添加正确的id代?或者也许有更好的方法。

回答

3

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

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

查看更多的1.2 release notes

+0

我没有运行1.2,但是这是一个很好的理由升级。谢谢你的回答,那真的很干净。 – 2010-01-09 18:10:24

1

我想你可以将S3Asset.groovy复制到src/groovy /中。从内存中,你的课应该覆盖插件提供的。我已经使用这种技术来调整一些插件,直到bug修复。但是我还没有尝试过只使用域类* GrailsPlugin.groovy文件。

此外,让上面的建议是一个很好的!

欢呼