Solarium으로 검색 시스템 사용자 인터페이스를 구축했습니다. 쿼리하기 전에-> getFacetSet ()-> createFacetField ( 'xyz')-> setField ( 'xyz') ...를 사용하여 선택 쿼리 개체를 쉽게 설정할 수 있습니다.
하지만 내 Solr requestHandler는 이미 필요한 모든 패싯을 반환합니다. 내 결과 집합에서 Solr이 일반적으로 기본적으로 반환하는 패싯을 검색하는 방법을 볼 수 없습니다.
가능합니까? 아니면 본질적으로 requestHandler에서 수행 한 작업을 복제하여 Solarium을 통해 모든 패싯을 명시 적으로 요청해야합니까?
실제로 비교적 간단합니다. 먼저 결과 세트가 필요했습니다.
$resultset = $client->select($query);
그런 다음 $ resultset에서 전체 데이터를 가져옵니다.
$resultData = $resultset->getData();
그런 다음 다음과 같이 구문 분석을 수행 할 수있었습니다.
if ($facet_ranges = $resultData['facet_counts']['facet_ranges']) {
foreach ($facet_fields as $facet_name => $facet) {
// Do stuff here
}
}
.. 가장 좋은 부분은 이것이 클러스터링과 같은 Solr 응답의 지원되지 않는 요소에 대해 작동 할 수 있다는 것입니다.
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다