0

내 모델은 Thinking Sphinx로 색인이 생성되고 acts_as_taggable_on에서 제공 한 모델의 태그로 검색 결과를 필터링하고 싶습니다. 나는 this previous question을 읽었는데, 검색 결과 :conditions => { :tags => 'Comedy' }을 필터링 쿼리로 사용할 수있게되었습니다.Acts_as_taggable_on 태그가 생각한 스핑크스 속성으로 사용됩니다.

기본적으로 모든 텍스트는 스핑크스의 색인 필드에서 검색되기 때문에 포괄적 인 해결책은 아닙니다. 예를 들어 Model.search :conditions => { :tags => "Comedy" }을 검색하면 Black Comedy 태그가있는 결과도 표시됩니다. 내가 대신 필드의 속성을 사용하는 것은 해결책이 볼 수 있지만 Model.search :with => { :tags => "Comedy" }define_index 블록은 다음과 같습니다 검색 할 때 나는 유효한 결과를 얻을 수없는 것 : 나는에서 제공되는 이전의 대답에 건물입니다

define_index 
    indexes title, :sortable => true 
    has category_tags(:name), :as => :tags 
end 

주 위에 링크 된 질문. 응답자는 컨텍스트 내에서 태그를 인덱싱하므로 category_tags 메소드가 필요합니다.

define_index 
    indexes title, :sortable => true 
    has "CRC32(category_tags.name)", :as => :tags, :type => integer 
end 

참고 :

답변