我对域类及其关联的域类有一个复杂的可搜索配置。当我搜索大约200个结果(最大值:200)时,响应时间太长。
结果集中的我在域类中为搜索指定了所有字段(简单或关联)。 我只需要返回一个id列表并忽略域类的其他字段。可能吗?我想这样做是为了加快我的搜索速度。此id列表将用于查询另一个no-sql db。获取所有字段似乎正在减慢我的搜索速度。
答案 0 :(得分:1)
我认为您可以通过将属性 store 设置为 no 来实现您想要的功能(让属性可搜索但不返回)。
例如:
class MyDomain {
String name
String email
static searchable = {
email index:'analyzed', store:'no'
name index:'analyzed'
}
}
在这个域中,我说名称和电子邮件已编入索引并进行分析(因此可以搜索它们)但是电子邮件属性未被存储,因此在返回对象时它将为null。对于其他属性,请检查:http://grails.org/Searchable+Plugin+-+Mapping+-+Searchable+Property