Reputation: 187
I am using the ElasticSearch custom DSLs & want to use the query to find the accommodations that have adults gte [:adults] & lte [:perfect_adults]. Its not working even if we used the static values using this formal docs of elastic search. https://www.elastic.co/guide/en/elasticsearch/reference/current/query-dsl-range-query.html#range-query-top-level-params
if params[:adults].present? && params[:perfect_adults].present?
conditions << { range: { adults: { gte: params[:adults].to_i, lte: params[:perfect_adults].to_i } } }
elsif params[:adults].present?
conditions << { range: { adults: { gte: params[:adults].to_i } } }
conditions << { range: { adults_and_children: { gte: (params[:adults].to_i + params[:children].to_i) } } }
conditions << { range: { minimum_adults: { lte: params[:adults].to_i } } }
end
Upvotes: 0
Views: 169
Reputation: 1
If you have perfect adults attributes in db then:
conditions << { range: { adults: { gte: params[:adults].to_i } } }
conditions << { range: { perfect_adults: { lte: params[:perfect_adults].to_i } } }
If you don't have perfect adults attributes in db then:
conditions << { range: { adults: { gte: params[:adults].to_i, lte: params[:perfect_adults].to_i } } }
Upvotes: 0