# In irb, can type:
# people/6 instead of Person.find(6)
# That is, can paste in urls into irb to find objects.
class ModelProxy
def initialize(klass)
@klass = klass
end
def /(id)
@klass.find(id)
end
end
def define_model_find_shortcuts
model_files = Dir.glob("app/models/**/*.rb")
model_names = model_files.map { |f| File.basename(f).split('.')[0..-2].join }
model_names.each do |model_name|
Object.instance_eval do
define_method(model_name.pluralize) do |*args|
ModelProxy.new(model_name.camelize.constantize)
end
end
end
end