2011-09-07 3 views
3

Soles Sunspot for Rails를 처음 사용했습니다. 나는 이것을 사용하려고 애 쓰고있다.Solr Sunspot minimum_match

<filter class="solr.EdgeNGramFilterFactory" minGramSize="2" maxGramSize="15" side="front"/> 

당연히 모든 토큰이 일치하는 것은 아니다. 내 검색에서 minimum_match 기능을 사용하는 방법을 알아낼 수 없습니다. http://outoftime.github.com/sunspot/docs/index.html. 어떤 도움이라도 대단히 감사하겠습니다.

나는 시도하고 난 그냥 0 결과를 얻을 :

Articles.search do 
    fulltext params[:q] do 
    :minimum_match => 1 
    end 
end 

답변

6

당신은 거의 다 있습니다. 해시 구문은 매개 변수로 최소 일치를 fulltext에 전달할 때 사용됩니다.

Article.search do 
    fulltext params[:q], :minimum_match => 1 
end 

블록 내에서 메소드 호출이 필요합니다.

Article.search do 
    fulltext params[:q] do 
    minimum_match 1 
    end 
end 
+0

차갑다. 이것은 EdgeNGramFilterFactory 필터를 넣기 전에 작동합니다. 그런 다음 한 번 내가 0 개의 결과를 얻는 것으로 돌아갑니다. EdgeNGramFilterFactory는 어떻게 사용합니까? – Cyrus

+0

아, 네가 한 두 가지 질문이있어서 그 중 하나를 놓친 것 같아. minimum_match 호출을 처리하면이 질문을 편집하거나 EdgeNGram 설정에 대한 자세한 내용이 담긴 새 질문을 게시 할 수 있습니다. schema.xml에 대한 변경 사항, 샘플 입력 필드 값 및 샘플 실패한 쿼리를 포함 할 수 있습니다. –

+0

http://stackoverflow.com/questions/5598114/edgengramfilterfactory-not-working-not-indexing – Cyrus

관련 문제