Pry este o consolă de dezvoltare puternică și alternativă modernă la IRB pentru Ruby.
Navigare de bază și schimbarea contextului
# Schimbă contextul într-un obiect sau clasă (asemănător navigării în directoare)
[1] pry(main)> cd Array
[2] pry(Array):1> cd- ..
[3] pry(main)> cd User.first
# Verifică adâncimea curentă de imbricare
[4] pry(User):2> nesting
Introspecție de cod și documentație
# Vizualizează codul sursă al unei metode în consolă
show-source Array#select
show-source User#full_name
# Vizualizează documentația YARD / RDoc pentru o metodă
show-doc Array#compact
# Caută metode care se potrivesc cu un termen
find-method each
Inspectarea variabilelor și metodelor (ls)
ls # Listează metode, variabile locale și de instanță
ls -m # Listează metodele de instanță ale obiectului curent
ls -M # Listează metodele de clasă definite
ls -l # Listează variabilele locale
ls -i # Listează variabilele de instanță (@vars)
ls -c # Listează constantele definite în scope
ls -G regex # Filtrează rezultatul folosind expresii regulate
Depanare în sesiune
# Intră în Pry din orice punct al codului Ruby
require 'pry'
binding.pry
wtf?: Afișează urmărirea stivei (backtrace) pentru cea mai recentă excepție.hist: Afișează istoricul comenzilor introduse.edit Object#method: Deschide definiția metodei direct în$EDITOR.
Integrare cu Rails (pry-rails)
Adăugați pry-rails în Gemfile:
group :development, :test do
gem 'pry-rails'
end
În rails console:
show-models # Afișează schemele și relațiile bazei de date
show-routes # Afișează tabela de rutare
show-middleware # Afișează stiva de middleware Rack