2014-05-15 3 views
1

저는 Solarium과 함께 검색 시스템 사용자 인터페이스를 구축했습니다. 쿼리하기 전에 -> getFacetSet() -> createFacetField ('xyz') -> setField ('xyz')를 사용하여 선택 쿼리 개체를 쉽게 설정할 수 있습니다 ...Solarium은 기본적으로 requestHandler에서 제공하는 모든 패싯을 반환 할 수 있습니까?

내 Solr requestHandler 이미 필요한 모든 패싯을 반환합니다. 내 결과 세트에서는 기본적으로 Solr이 일반적으로 돌려주는 패싯을 검색하는 방법을 볼 수 없습니다.

가능합니까? 아니면 솔라 리움을 통해 모든 요구 사항을 명시 적으로 요청해야합니까? 요청서에서 수행 한 작업을 본질적으로 복제합니다 .Handler?

답변

1

사실 비교적 간단합니다.

$resultset = $client->select($query); 

을 그리고 다음 $ 결과 집합에서 전체 데이터를 얻을 : 난 그냥 첫째, 결과 집합을 얻을 필요

$resultData = $resultset->getData(); 

그럼 내가 그들을 구문 분석 같은 것을 할 수있었습니다을 :

if ($facet_ranges = $resultData['facet_counts']['facet_ranges']) { 
    foreach ($facet_fields as $facet_name => $facet) { 
    // Do stuff here 
    } 
} 

.. 가장 중요한 부분은 클러스터링과 같은 Solr 응답의 다른 지원되지 않는 요소에 대해 작동 할 수 있다는 것입니다.

+1

위대한 thx! 이것은 여전히 ​​일광 욕실 3.8 나를 가진 작품 : –

+0

만세, 고마워! – Offlein