Rails
grape

コンソール上からGrapeのroutesを確認する

More than 1 year has passed since last update.

普通のRailsのルーティングならpryを使っている場合以下のように簡単に確認できる。

> show-routes

Grapeの場合はうまい方法が見当たらなかったのでとりあえず以下のようにやった。

> pp Api.routes.select {|r| r.instance_variable_get(:@options)[:description] =~ /Login/ }
[#<Grape::Route:0x007fdd5a2c32a8
  @options=
   {:params=>
     {"mail"=>{:required=>true, :type=>"String"},
      "password"=>{:required=>true, :type=>"String"}},
    :description=>"Login",
    :prefix=>nil,
    :version=>"v1",
    :namespace=>"/",
    :method=>"POST",
    :path=>"/:version/login(.:format)",
    :compiled=>/\A\/(?<version>v1)\/login(?:\.(?<format>[^\/.?]+))?\Z/,
    :settings=>
     {:description=>
       {:description=>"Login",
        :params=>
         {"mail"=>{:required=>true, :type=>"String"},
          "password"=>{:required=>true, :type=>"String"}}},
      :declared_params=>[:mail, :password]}}>]

Grapeのパラメータの指定とか書く位置間違えて(ネスト間違えたり)して意図しないことになってたりしたことがあったので、作ってる最中はまめに確認したい。

beforeとかafterがどの単位に効いているかも確認できたら良いんだけどなー
どうしたらいいんだろう?