Sha256: 6f6226a393013fc0010ae0646000ef9d75c72a736276111090a75addb5af7bcb

Contents?: true

Size: 1.04 KB

Versions: 19

Compression:

Stored size: 1.04 KB

Contents

desc 'Print out all defined routes in match order, with names. Target specific controller with CONTROLLER=x.'
task :routes => :environment do
	Rails.application.reload_routes!
	all_routes = Alchemy::Engine.routes.routes
	
	if ENV['CONTROLLER']
		all_routes = all_routes.select{ |route| route.defaults[:controller] == ENV['CONTROLLER'] }
	end

	routes = all_routes.collect do |route|
	
		reqs = route.requirements.dup
		reqs[:to] = route.app unless route.app.class.name.to_s =~ /^ActionDispatch::Routing/
		reqs = reqs.empty? ? "" : reqs.inspect
	
		{:name => route.name.to_s, :verb => route.verb.to_s, :path => route.path, :reqs => reqs}
	end
	
	 # Skip the route if it's internal info route
	routes.reject! { |r| r[:path] =~ %r{/rails/info/properties|^/assets} }
	
	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

Version data entries

19 entries across 19 versions & 1 rubygems

Version Path
alchemy_cms-2.1.12 lib/tasks/routes.rake
alchemy_cms-2.1.11 lib/tasks/routes.rake
alchemy_cms-2.1.9.1 lib/tasks/routes.rake
alchemy_cms-2.1.9 lib/tasks/routes.rake
alchemy_cms-2.1.8.1 lib/tasks/routes.rake
alchemy_cms-2.1.8 lib/tasks/routes.rake
alchemy_cms-2.1.7 lib/tasks/routes.rake
alchemy_cms-2.1.6 lib/tasks/routes.rake
alchemy_cms-2.1.5 lib/tasks/routes.rake
alchemy_cms-2.1.4 lib/tasks/routes.rake
alchemy_cms-2.1.3 lib/tasks/routes.rake
alchemy_cms-2.1.2 lib/tasks/routes.rake
alchemy_cms-2.1.1 lib/tasks/routes.rake
alchemy_cms-2.1 lib/tasks/routes.rake
alchemy_cms-2.1.rc6 lib/tasks/routes.rake
alchemy_cms-2.1.rc5 lib/tasks/routes.rake
alchemy_cms-2.1.rc4 lib/tasks/routes.rake
alchemy_cms-2.1.rc3 lib/tasks/routes.rake
alchemy_cms-2.1.rc2 lib/tasks/routes.rake