All threads / how do i display search results

Ask A Question

Notifications

You’re not receiving notifications from this thread.

how do i display search results

Neil Patel asked in Rails

Following on from my prev question regarding implementing search using the geocoder gem [https://gorails.com/forum/how-do-i-implement-search-by-postcode-zipcode-using-the-geocoder-gem]

I have implemented a search feature on the index page. When i enter the postcode
it does not return any results . It gives me a url of http://localhost:3000/locations?utf8=%E2%9C%93&search=m20+2wz but nothing in the index view page.

locations_controller.rb

class LocationsController < ApplicationController
def index
if params[:search].present?
@locations = Location.near(params[:search], 10)
else
@locations = Location.all.order("created_at DESC")
end
end

** index.html.erb**

<div class="container">


SubContractor Postcode search


Use this postcode search to quickly find subcontractors in your area


<%= form_tag locations_path, :method => :get do %>
<%= text_field_tag :search, params[:search], placeholder: "e.g M20 2WZ" %>

    <%= submit_tag "Search Near", :name => nil %>
  </p>
<% end %>


location.rb

class Location < ApplicationRecord
geocoded_by :full_address
after_validation :geocode

def full_address
[address, city, postcode].compact.join(',')
end
end

added to index.html.erb now showing results

<% @locations.each do |location| %>


<%= location.company_name %>
<%= location.address %>
<%= location.city %>
<%= location.postcode %>

<% end %>
Join the discussion

Want to stay up-to-date with Ruby on Rails?

Join 34,885+ developers who get early access to new tutorials, screencasts, articles, and more.

    We care about the protection of your data. Read our Privacy Policy.

    logo Created with Sketch.

    Ruby on Rails tutorials, guides, and screencasts for web developers learning Ruby, Rails, Javascript, Turbolinks, Stimulus.js, Vue.js, and more. Icons by Icons8

    © 2020 GoRails, LLC. All rights reserved.