使用 elasticsearch rails 搜索 has_many 表内容 4

search has_many tables contents with elasticsearch rails 4

class Entity < ActiveRecord::Base
 include Tire::Model::Search
 include Tire::Model::Callbacks
 has_many :reports,:dependent=>:destroy

 def self.search(params)
    tire.search() do
     query { string params[:query] } if params[:query].present?         
    end
 end

 def to_indexed_json
   to_json(:include => [:reports])
 end

end

class Report < ActiveRecord::Base 
 belongs_to :entity
 has_many :schedules,:dependent=>:destroy
end

我是 "elasticsearch" 的新手。我可以通过上面的 "reports" 搜索 code.But 如何包含 "schedules" 以便我可以搜索它的数据实体 model.Please 帮帮我。

has_many :reports,:dependent=>:destroy

之后将以下行添加到您的 Entity 模型
has_many :schedules, :through => :reports

并确保您的 Schedule 模型中有 belongs_to :report