Railsのコンソールをより便利にするpry-rails gem

  • 88
    Like
  • 0
    Comment
More than 1 year has passed since last update.

rubyを使っている人なら皆使っていると思われるpryですが(pryについてはRuby - ググるよりもまずはpry - Qiita [キータ]などを参考に),そのpryをrails console代わりに使うときに便利ユーティリティを提供してくれるpry-rails gemについて紹介します.

pry-railsが提供するコマンド

  • show-middleware
  • show-model
  • show-models
  • show-routes
  • recognize-path

show-middleware

名前の通り,そのアプリケーションで利用しているミドルウェアの一覧を表示する.(名前はshow-middlewaresの方が良い気がする)
デフォルトでもこんなミドルウェアが利用されてるんだなーと眺めるのによい

[1] pry(main)> show-middleware
use Raven::Rack
use ActionDispatch::Static
use Rack::Lock
use ActiveSupport::Cache::Strategy::LocalCache
...

show-model

show-model Itemで,Itemモデルのカラムの型&名前やリレーションを表示してくれる.モデルを俯瞰したいときに便利.

[2] pry(main)> show-model Item
Item
  id: integer
  created_at: datetime
  updated_at: datetime
  ...
  belongs_to :user
  has_many :comments
  ...

show-models

全てのモデルに対してshow-modelする.--grepオプションと組み合わせると便利かも.

show-routes

rake routesの結果を表示してくれる.show-routes --grep itemsなどgrepオプションも使えて便利.
(他に高速にrake routesを見る方法として,Railsサーバーが立ち上がっている状態で http://localhost:3000/rails/info へアクセスするという方法もある.)

recognize-path

Rails - Routingのテストをする - Qiita [キータ]で紹介したような,Qiita::Application.routes.recognize_pathを実行する.-m postのようにリクエストメソッドを指定もできる.

[1] pry(main)> recognize-path '/advent-calendar/2013'
{:action=>"index", :controller=>"advent_calendars", :year=>"2013"}