method_missing如何处理各种find_by_ *

时间:2016-09-01 07:57:00

标签: ruby-on-rails ruby activerecord metaprogramming

我正在使用ActiveRecord中的find_by_ *进行研究,结果发现以下代码扮演了角色。如果有人可以详细说明为什么以下方法适用于find_by_ *方法?

def method_missing(name, *arguments, &block)
      match = Method.match(self, name)

      if match && match.valid?
        match.define
        send(name, *arguments, &block)
      else
        super
      end
end

0 个答案:

没有答案