Je me demande quelle serait la meilleure façon d'y remédier. J'ai une fonction de recherche qui ressemble à ceci:searchkick trouver dans le rayon de l'emplacement
def search
search_options = {
misspellings: { edit_distance: 2 },
fields: [:eventname, :date],
order: { date: :asc, eventname: :asc },
match: :word_start,
suggest: true,
page: params[:page],
per_page: 20
}
if params[:date_from].present?
datefrom = params[:date_from].to_datetime.strftime('%Y-%m-%d')
dateto = params[:date_to].to_datetime.strftime('%Y-%m-%d')
search_options[:where] = { date: {gte: datefrom, lte: dateto} }
end
@events = Event.search params[:search], search_options
if @events.results.any?
render 'events/results'
else
@popevents = Event.limit(3).order('RANDOM()')
render 'events/noresults'
end
end
Maintenant, ce que je suis désireux de faire est d'ajouter une fonctionnalité de recherche qui permettrait aux gens de rechercher des événements à moins de 50 miles de leur code postal qu'ils entrent.
J'ai un champ de code postal dans ma table d'événements avec le code postal de tous les endroits d'événements.
Quelle serait la meilleure façon de faire cela? (Simple si possible un peu comme un guide de tenir votre main serait étonnant !!)
Sam