なるべく短くてかっこいいURLでれすとふるにデータにアクセスできるようにしたいけど、既にアプリ内で登録されているパスとぶつかったら嫌じゃないですか。具体的にはlogoutとかhotentryみたいなユーザ名を作らせない、という処理を作りたい。 というわけで、sinatraでブロックに関連付けられたhttp request pathの一覧をとる。 sinatra/base.rbにroutesという読み取り用アクセサが定義されてた。 sinatraアプリ内で require 'pp' pp Sinatra::Application.routes['GET'].map{|i|i.first} するとGETに関連付けられたパス名が手に入る。正規表現になってた。 [/^\/check_route$/, /^\/add$/, /^\/$/, /^\/(.*?)\/show$/, /^\/(.*?)\/