Cree un módulo para el índice de neumáticos específicamente relacionado con ese modelo e inclúyalo en el modelo. Como las sesiones son solo una asociación con el modelo, su referencia estará allí en el documento que va a elasticsearch. Usted tiene que combinar el documento sesiones en el documento de modelo como éste, ya que pasamos el JSON del documento a Elasticsearch en el módulo índice de neumáticos
def to_model_json
self.document.merge({"sessions" => sessions.as_json}).to_json
end
este método está pasando un documento en JSON para Elasticsearch través de neumático que va a tener su sesiones fusionadas en el documento.
en el módulo índice de neumáticos dar un nombre de índice que puede pasar en el objeto de la búsqueda de neumáticos para ejecutar el filtro de consultas
A continuación, cree un objeto de búsqueda de neumáticos
search_object = Tire::Search::Search::new(Model.index_name, other attributes)
puede comprobar otros atributos que se puede pasar de https://github.com/karmi/tire
a continuación, ejecutar su método de búsqueda como esto le dará el resultado deseado
search_object.filter :range, 'sessions.starts_on' => {:gte => start_date,
:lte => ends_on}
¿está usando AciveRecord? y ¿ha considerado personalizar el método de índice to_json para esto? – abhas
sí para ActiveRecord. Y personalizando el índice, ¿cómo exactamente? tener estas 'sessions.starts_on' return what? – alony