我的Grails应用程序正在使用可搜索插件,该插件基于Compass和Lucene构建,以提供搜索功能。我有两个可搜索的类,比如Author和Book。我已将这些类映射到搜索索引,以便只搜索某些字段。grails可搜索插件查询
要执行在这两种类搜索我只需拨打
def results = searchableService.search(query)
一个做跨两个班同时搜索的不错的功能,就是results
对象包括关于结果的数量的元数据包括在内,数结果可用,分页详细信息等。
我最近为Book类添加了一个布尔值approved
标志,我从不希望未经认可的书出现在搜索结果中。一种选择是,以取代上述与呼叫:
def bookResults = Book.search(query + " approved:1")
def authorResults = Author.search(query)
不过,我现在需要弄清楚如何将元数据两个结果,这很可能是棘手的(特别是分页)相结合。
是否有一种方法可以通过单个查询在书籍和作者之间进行搜索,但只返回已批准的书籍?
我很佩服你的坚持。上面的解决方案似乎工作,非常感谢! – 2012-01-30 16:05:30
:-)希望捕捉赏金... – rdmueller 2012-01-31 09:01:19