2
내가 레일 4.0.4 내 Product Model에이 코드를 실행되기 전에 4.1.0 레일로 업그레이드 한 후 내 (재) 타이어 보석 통합 오류를 받고 있어요

:레일 4.1.0 elasticsearch 타이어 협회

def self.search(params) 
    tire.search(load:{:include => [:user, :tags]}, match_all: {}, page: params[:page], per_page: 12) do 
    sort do 
     by :created_at, 'desc' 
     end 
    query do 
     boolean do 
     must { string params[:query], default_operator: "AND" } 
     must { term :online, true } 
     must_not { string 'location:Undefined' } 
     end 
    end 
    end 
end 

그것은 잘 작동했지만, 지금은 액티브 나에게이 오류 던져 :

Couldn't find all Products with 'id': (1118, 1036, {:include=>[:user, :tags]}) (found 2 results, but was looking for 3) 

내 질문에 난 타이어 보석과 관련된 모델을로드 할 수있는 방법입니다? 은 load:{:include => [:user, :tags]입니까?

미리 감사드립니다. JD.

답변

0

타이어는 klass.find(ids, @options[:load])을 사용하여로드를 수행합니다. 이 찾기 행동은 잠시 사용되지 않지만 보석 activerecord-deprecated_finders을 통해 지원됩니다. Rails 4.1.0은 그 보석에 대한 기본 종속성을 제거했습니다.

gem 'activerecord-deprecated_finders' 
+0

은 '액티브 - deprecated_finders' –

+0

정확히 같은 방식으로 보석 작동하지 : 당신은 동작을 복원 할 Gemfile 자신의 보석을 포함 할 수 있어야한다

? '번들 설치 '후? – Shadwell

+0

예, 같은 오류가 발생합니다. –