Вот один вкладыш, который дает вам все контроллеры на основе вашего файла маршрутов.Я обнаружил, что у меня нулевое значение, поэтому я добавил спасение, а затем отклонил любое из спасенных пустых.Uniq удаляет любые дубликаты.
Rails.application.routes.routes.collect { |r| r.defaults[:controller] rescue '' }.reject! { |c| c.empty? }.uniq
Добавлен заголовок, чтобы сделать их более подходящими для вашей навигации.
Rails.application.routes.routes.collect { |r| r.defaults[:controller].titlecase rescue '' }.reject! { |c| c.empty? }.uniq
Это только для тех, кто находится в пространстве имен администратора.
Rails.application.routes.routes.collect { |r| r.defaults[:controller].titlecase rescue '' }.reject { |c| c.empty? }.uniq.reject { |n| !n.include?('Admin/') }.map { |i| i.gsub('Admin/', '') }.sort