Skip to content

Instantly share code, notes, and snippets.

What would you like to do?
Find unused rails routes
# frozen_string_literal: true
unused_routes = {}
# Iterating over all non-empty routes from RouteSet do |route|
name = route[:controller].camelcase
next if name.start_with?('Rails')
controller = "#{name}Controller"
next unless Object.const_defined?(controller) && ![:action])
# Get route for which associated action is not present and add it in final results
unless Dir.glob(Rails.root.join('app', 'views', name.downcase, "#{route[:action]}.*")).any?
unused_routes[controller] = [] if unused_routes[controller].nil?
unused_routes[controller] << route[:action]
puts unused_routes
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment