Permalink
Browse files

Make rake routes gracefully handle routes with no name

Signed-off-by: Santiago Pastorino <santiago@wyeworks.com>
  • Loading branch information...
1 parent 82b700a commit 600cf8bebc29da3538032ea141d9881a5ead9b1f @rubys rubys committed with spastorino Aug 29, 2010
Showing with 5 additions and 5 deletions.
  1. +5 −5 railties/lib/rails/tasks/routes.rake
@@ -13,16 +13,16 @@ task :routes => :environment do
reqs[:to] = route.app unless route.app.class.name.to_s =~ /^ActionDispatch::Routing/
reqs = reqs.empty? ? "" : reqs.inspect
- {:name => route.name, :verb => route.verb.to_s, :path => route.path, :reqs => reqs}
+ {:name => route.name.to_s, :verb => route.verb.to_s, :path => route.path, :reqs => reqs}
end
routes.reject! { |r| r[:path] =~ %r{/rails/info/properties} } # Skip the route if it's internal info route
- name_width = routes.map{ |r| r[:name].length if r[:name] }.max
- verb_width = routes.map{ |r| r[:verb].length if r[:verb] }.max
- path_width = routes.map{ |r| r[:path].length if r[:path] }.max
+ name_width = routes.map{ |r| r[:name].length }.max
+ verb_width = routes.map{ |r| r[:verb].length }.max
+ path_width = routes.map{ |r| r[:path].length }.max
routes.each do |r|
puts "#{r[:name].rjust(name_width)} #{r[:verb].ljust(verb_width)} #{r[:path].ljust(path_width)} #{r[:reqs]}"
end
-end
+end

4 comments on commit 600cf8b

Contributor

radar replied Aug 30, 2010

Could somebody give an example of what this commit fixes?

Owner

spastorino replied Aug 30, 2010

rake routes command was not working with wild routes until this commit.
Thanks to the awesome test suite of Sam Ruby this could be fixed just in time ;).

Contributor

radar replied Aug 30, 2010

spastorino: Do you have an example of "wild routes"?

Owner

spastorino replied Aug 30, 2010

From the comments of the routes file:

# This is a legacy wild controller route that's not recommended for RESTful applications.
# Note: This route will make all actions in every controller accessible via GET requests.
# match ':controller(/:action(/:id(.:format)))'
Please sign in to comment.