Привет,
В ruby есть специальный метод method_missing, на случай попытки вызова метода, который не существует. Т.е. в такой ситуации
class SampleClass
attr_accessor :something
def initialize(something)
@something = something
end
def method_missing(m,*args,&block)
p "#{m} doesn't exist"
end
end
e = SampleClass.new("wazzup!!")
p e.something #выведет wazzup!!
p e.foo #вызовет исключение NoMethodError и вызовет метод method_missing, выведет foo doesn't exist
e.method("foo").call #ошибка undefined method 'foo'. method_missing не срабатывает
Почему не срабатывает method_missing в последней строке?
Версия ruby 1.9.3
Спасибо.