如何打破继承

时间:2015-04-01 00:01:54

标签: grails gorm

我正在使用Grails。我正在尝试使用来自一个来源的值作为搜索其他来源的方法。

def numbers=[];
//collection of Info maps
somemaps.each{
    numbers.add(it.id);
}
//THIS IS THE LINE THAT GENERATES THE ERROR
def info=Info.findAll("from Info as i where i.site in (:xsites)",['xsites':numbers]);

但是我收到了这个错误

Subtype 'java.lang.Integer' of reloadable type myservices.Info is not reloadable:

如何从“信息”中删除“数字”的值,以便它们在继承链中不再具有该类型?

1 个答案:

答案 0 :(得分:1)

好吧,我的第一个问题是,Info&之间是否有关系?现场。如果是这样,为什么不尝试实际的标识符。如,

def info=Info.findAll("from Info as i where i.site.id in :xsites, ['xsites':numbers]");

或者更糟糕的是,使用createCriteria

def info=Info.createCriteria().list{
    site{
        'in' ('id', numbers)
    }
 }