Sagen, ich habe:Wie bekomme ich eine Liste aller Routen, die in einer Sinatra App verwendet werden?
require 'sinatra'
get '/' { "hi" }
get '/a' { "a" }
get '/b' { "b" }
Gibt es eine einfache Möglichkeit, eine Liste aller definierten Routen in meiner Sinatra Anwendung zu erhalten?
Ich untersuchte Sinatra::Base.routes
, aber das scheint nicht die Routen zu enthalten, die ich gerade definiert habe.
Ich hatte gehofft, einen schönen Weg, um eine selbstdokumentiere API wie routes.each { |r| p r }
zu machen zu bekommen:
/
/a
/b
Dank! Das erklärt Sinatra :: Application.instance_variables Teil, wo ich @routes davon bekomme. Es gibt auch [: @conditions,: @routes,: @ filters,: @errors,: @middleware,: @prototype,: @extensions,: @templates], obwohl ich noch nicht verstanden habe, wie man diese auch verwendet. Vielleicht sollte ich als Frage fragen? –