我对一个域类及其关联的域类有一个复杂的可搜索配置。当我搜索大约200个结果(最多200个)时,需要很长时间才能响应。
在结果集中,我在域类中指定了用于搜索的所有字段(简单或关联)。我只需要返回一个id列表,忽略域类的其他字段。这可能吗?我这么做是为了加快搜索速度。此id列表将用于查询其他no-sql数据库。似乎获取所有字段会减慢我的搜索速度。
我认为你可以实现你想要的(让属性是可搜索的,但不返回它)通过设置属性storeno。
例如:class MyDomain {
String name
String email
static searchable = {
email index:'analyzed', store:'no'
name index:'analyzed'
}
}
在这个域中,我说名称和电子邮件被索引和分析(因此它们可以被搜索),但电子邮件属性没有被存储,因此当对象返回时它将为空。查看其他属性:http://grails.org/Searchable+Plugin+-+Mapping+-+Searchable+Property