In config/routes.rb
, I tried both:
root :to => 'things#index', :as => 'things'
and
root :to => 'things#index'
When I hit http://localhost:3000/
, both approaches work, and nothing seems to be different.
What is the :as
option used for?
The :as option forms a named route.
Usually it's used in a non-root route. For example:
match '/search' => 'search#search', :as => 'search' # SearchController#search
You could then do something like:
<%= link_to search_path, 'Click Here to Search!' %>
search_path
and search_url
are defined because of the :as
For a root route, you don't really need :as
because the the URL helpers root_path
and root_url
are defined for you by Rails.