369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
|
# File 'lib/m4dbi/model.rb', line 369
def method_missing( method, *args )
begin
@row.send( method, *args )
rescue NoMethodError => e
if e.backtrace.grep /method_missing/
self_str = 'model object'
elsif self.respond_to? :to_s
self_str = self.to_s
elsif self.respond_to? :inspect
self_str = self.inspect
elsif self.respond_to? :class
self_str = "#{self.class} object"
else
self_str = "instance of unknown model"
end
raise NoMethodError.new(
"undefined method '#{method}' for #{self_str}",
method,
args
)
end
end
|