繁体   English   中英

Grails 可搜索返回唯一或不同的结果

[英]Grails Searchable return unique or distinct results

我正在使用可搜索的 Grails 进行搜索查询,但我只想返回不同的结果。

years = House.searchEvery('(house_type:"condo")', [sort: 'house_year', order: 'desc'])

如何使 house_year 独一无二/与众不同,还是我需要自己解析它?

如果您想从结果中消除重复项(在这种情况下,重复项被视为具有相同house_year值的 object),您可以使用unique方法 Groovy 添加到Collection

years = House.searchEvery('(house_type:"condo")', [sort: 'house_year', order: 'desc'])
def uniqueYears = years.unique {it.house_year}

显然,在可搜索插件的帮助下,没有简单的方法可以做到这一点。 搜索您的术语后,您可以自己过滤结果集。 在你的情况下,我会尝试使用常规的 grails 标准或 hql 查询。 例如

House.createCriteria.listDistinct {
   order("house_year", "desc")
   eq("house_type", "condo")
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM