Search类接受什么样的查询?

时间:2014-03-18 15:06:37

标签: search cq5

我有一个使用Search课程的页面。现在它只是提供给出的搜索文本的全文。 (search.getQuery()返回" searchtext"。)不幸的是,这也是拾取不属于&#c; cq:Page'的项目。我知道有一个Querybuilder接受了type = cq:Page参数,但当我把它放到search.setQuery()中时,搜索没有返回任何内容。

我尝试过输入" fulltext = searchtext& type = cq:Page"它什么都不返回。

那么我需要在查询中添加什么格式,或者是否无法向Search类添加这样的参数?

1 个答案:

答案 0 :(得分:0)

setQuery()方法用于设置搜索字词,而不用于设置要执行的查询。

即,如果你想搜索" foo",那你就search.setQuery("foo");

Search类使用SimpleSearch执行全文搜索。因此,SimpleSearch通过添加一些搜索逻辑来实现简单搜索。您可以修改搜索路径以及搜索,启动和限制结果的属性。

在您的情况下,您应该考虑使用QueryQueryBuilder

查看Querybuilder docs,其中提供了有关如何实现此目的的详细信息。