내 모델은 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
참고 :