나는 ElasticSearch 용 Tire 보석과 함께 레일을 사용하고 있으며 여러 모델을 검색해야합니다. 뭔가 같이 :많은 유형의 탄성 검색
# title is a field in all models
Tire.search :tasks, :projects, :posts, { :title => "word" }
(루씬) 문서의 방향이 내가 모델 하나 하나를 검색 한 후 결과를 처리 할 수 있습니다 알고 있지만 그 ElasticSearch을 고려하여 불필요한해야합니다.
의견이 있으십니까?
감사합니다.
안녕하세요, 유스 케이스가 무엇인지 명확하게 설명해 주시겠습니까? ActiveModel 통합은 한 모델 당 검색 메소드를 공개합니다. 그러나 예제에서와 같이'Tire.search' 메소드를 사용하면 실제로 둘 이상의 인덱스를 검색 할 수 있습니다. 문제는, 당신의 모델 클래스가 아니라'Tire :: Results :: Item' 클래스로 레코드를 래핑하는 것입니다. 그러나 이것은 제가 어쨌든 중력을 받고있는 행동입니다. 결과를이 자유 형식 클래스로 랩 한 다음 "실제 모델"을로드하는 방법을 제공하십시오. https://github.com/karmi/tire/issues/11 및 https://github.com/karmi/tire/issues/12에서 문제를 확인하십시오. – karmi
@karmi, 나는'Tire.search {...}'를 시도했지만 적어도 현재 우리가 사용하고있는 버전 인 0.1.13에서는 지원하지 않았다. 최대한 빨리 보석 버전을 업데이트하겠습니다. 어쨌든 필터링을 위해'type'을 사용하면서 동일한 인덱스를 검색하는 것은 우리의 경우에 꽤 잘 작동합니다. 귀하의 회신에 감사드립니다. –