So geben Sie die Rails-Routenliste im CSV-Format aus
→ Wenn Sie eine neue Organisation kennenlernen, können Sie sie verwenden, wenn Sie das Routing verfolgen und das Ganze aus der Vogelperspektive betrachten und die Informationen in SpreadSheet usw. systematisch zusammenfassen möchten.
Siehe Implementierung von Schienenrouten https://github.com/rails/rails/blob/5ccdd0bb6d1262a670645ddf3a9e334be4545dac/railties/lib/rails/tasks/routes.rake
inspector
zu packen und mit .format ()
zu formatieren.$ bundle exec rails g task route_formatter csv
lib/tasks/route_formatter.rake
namespace :route_formatter do
desc "get route as csv format"
task csv: :environment do |t|
class CSVFormatter
def initialize
@buffer= []
end
def result
@buffer.join("\n")
end
def section_title(title)
end
def section(routes)
routes.each do |r|
@buffer << [r[:name], r[:verb], r[:path], r[:reqs]].join(",")
end
end
def header(routes)
@buffer << %w"Prefix Verb URI_Pattern Controller#Action".join(",")
end
def no_routes
@buffer << ""
end
end
require "action_dispatch/routing/inspector"
all_routes = Rails.application.routes.routes
inspector = ActionDispatch::Routing::RoutesInspector.new(all_routes)
puts inspector.format(CSVFormatter.new, ENV['CONTROLLER'])
end
end
bin/rails route_formatter:csv
bin/rails route_formatter:csv | pbcopy
Recommended Posts