1

在 solr PECL php 包中,我们可以使用 solrparam::set 方法向 solrQuery 类添加参数作为名称值对。因此,为了构建查询,我们可以使用这个 SolrParams 类。

我只是想弄清楚 solrquery 对象中所有方法的用例是什么。喜欢

      ***"SolrQuery::addFacetDateField — Maps to facet.date
      SolrQuery::addFacetDateOther — Adds another facet.date.other parameter
      SolrQuery::addFacetField — Adds another field to the facet
      SolrQuery::addFacetQuery — Adds a facet query
      SolrQuery::addField — Specifies which fields to return in the result
      SolrQuery::addFilterQuery — Specifies a filter query
       SolrQuery::addHighlightField — Maps to hl.fl"***

....ETC。

我们可以简单地使用 solrparam 给查询添加参数,那么这些有什么用。

谢谢

4

2 回答 2

2

添加这些方法是为了简化 Solr 函数的使用,不幸的是,当前文档遗漏了很多我目前正在处理的用例。

使用日期方面等查询功能的方法更容易且更一致,而无需每次都进入 Solr 文档来提取参数名称。它也不易出错。

目前,如果您想了解更多关于这些功能的信息,可以查看 Solr Wiki http://wiki.apache.org/solr/SimpleFacetParameters#facet.date.other

SolrParams 是 SolrQuery 的祖先,SolrQuery 的功能比裸骨(SolrParams)要多得多。在文档中,它传递给 SolrClient::query() 作为查询方法接受 SolrParams 类型的参数(这意味着 SolrParams 的任何后代)。

于 2014-02-26T23:20:14.070 回答
1

这些方法没有什么特别之处。您可以以两种方式使用 API,而不会受到任何惩罚。使用 SolrQuery 方法使您的代码更加明确,因此我认为它的可读性更好。

于 2013-02-03T01:22:39.933 回答