我有一个使用Search课程的页面。现在它只是提供给出的搜索文本的全文。 (search.getQuery()返回" searchtext"。)不幸的是,这也是拾取不属于&#c; cq:Page'的项目。我知道有一个Querybuilder接受了type = cq:Page参数,但当我把它放到search.setQuery()中时,搜索没有返回任何内容。
我尝试过输入" fulltext = searchtext& type = cq:Page"它什么都不返回。
那么我需要在查询中添加什么格式,或者是否无法向Search类添加这样的参数?
答案 0 :(得分:0)
setQuery()
方法用于设置搜索字词,而不用于设置要执行的查询。
即,如果你想搜索" foo",那你就search.setQuery("foo");
Search类使用SimpleSearch执行全文搜索。因此,SimpleSearch通过添加一些搜索逻辑来实现简单搜索。您可以修改搜索路径以及搜索,启动和限制结果的属性。
在您的情况下,您应该考虑使用Query和QueryBuilder。
查看Querybuilder docs,其中提供了有关如何实现此目的的详细信息。