Pry is een krachtige runtime-ontwikkelaarsconsole en een alternatief voor IRB voor Ruby met broncode-navigatie.
Basisnavigatie & Context wisselen
# Verander scope naar een object of klasse (zoals mapnavigatie)
[1] pry(main)> cd Array
[2] pry(Array):1> cd- ..
[3] pry(main)> cd User.first
# Controleer huidige nestdiepte
[4] pry(User):2> nesting
Code- & Documentatie-introspectie
# Bekijk broncode van een methode direct in de console
show-source Array#select
show-source User#full_name
# Bekijk YARD / RDoc-documentatie voor een methode
show-doc Array#compact
# Zoek methoden die overeenkomen met een query
find-method each
Variabelen & Methoden inspecteren (ls)
ls # Toon methoden, lokale variabelen en instantievariabelen
ls -m # Toon instantiemethoden van het huidige object
ls -M # Toon klassemethoden van de huidige klasse
ls -l # Toon lokale variabelen
ls -i # Toon instantievariabelen (@vars)
ls -c # Toon constanten gedefinieerd in scope
ls -G regex # Filter uitvoer met reguliere expressie
In-sessie foutopsporing
# Start Pry vanaf elk punt in Ruby-code
require 'pry'
binding.pry
wtf?: Druk backtrace af van meest recente uitzondering.hist: Toon invoergeschiedenis.edit Object#method: Open methodedefinitie direct in$EDITOR.
Rails-integratie (pry-rails)
Voeg pry-rails toe aan je Gemfile:
group :development, :test do
gem 'pry-rails'
end
In rails console:
show-models # Toon alle databaseschema's en relaties
show-routes # Toon routingtabel
show-middleware # Toon Rack-middlewarestack