2013-07-28 2 views
1

Solrnet을 사용하여 검색 결과를 반환하고 패싯 (특히 다중 값 필드 인 범주)을 요청하고 있습니다.Solrnet 패싯 반환 공간

내가 맞닥뜨릴 문제는 공간 때문에 "집 제품"카테고리가 두 개의 분리 된면으로 반환된다는 것입니다.

이것이 단일 패싯 값으로 반환되도록하는 방법이 있습니까? 아니면 인덱스에 인덱스를 추가 할 때 값을 이스케이프해야합니까? 토큰은 다음 필드의 텍스트 분석을 사용하는 house products 생성하는 경우 사전 알

답변

4

에서

감사합니다.
텍스트 필드는 Faceting에 사용하도록 제안되지 않습니다. 텍스트 필드가 토큰 화되고 필터링되어 응답으로 반환 된 패싯에서 볼 수있는 여러 토큰을 생성하므로 원하는 동작을 얻지 못합니다.

단어를 분할하지 않고 사본 필드를 사용하여 필드를 문자열 필드로 복사하여 패싯에서 사용할 수 있습니다.

SolrFacetingOverview : -

패 시팅 필드는 종종 두 가지 목적을 제공하기 위해 지정되기 때문에, 사람이 읽을 수있는 텍스트 및 드릴 다운 쿼리 값, 그들은 자주 검색 및 정렬에 사용 필드에서 다른 인덱스 있습니다 :

그들은 종종
  • 그들은 종종 낮은 경우
  • 로 매핑되지 않은 별도의 단어로 토큰 화되지
    1. 사람이 읽을 수있는 구두점은 이중 따옴표를 제외하고 종종 제거되지 않습니다.
    2. 저장된 값은 인덱싱 된 값처럼 보일 것이고 faceting 메커니즘은 값 검색에 사용되기 때문에 종종 저장할 필요가 없습니다.

    문자열 필드를 사용하면 오버 헤드없이 충분할 것입니다.

    +0

    완벽 - 방금 text_general에서 string으로 유형이 변경되어 작동합니다. 고마워. – higgsy

    +0

    방금 ​​xD를 저장했습니다. –

    0

    면화는 토큰에서 작동하므로 여러면에 토큰 화 된 필드가있는 경우 패싯도 분할됩니다. 나는 당신을 제안한다 또 다른 분야를 창조하십시오 유형의 문자열은 faceting를 위해서만 사용했다.