module ActiveModel::AttributeMethods

def attribute_missing(match, *args, &block)

attribute. This method can be overloaded to customize the behavior.
attribute method. If so, we tell +attribute_missing+ to dispatch the
+method_missing+ is called we check to see if there is a matching
+attribute_missing+ is like +method_missing+, but for attributes. When
def attribute_missing(match, *args, &block)
  __send__(match.target, match.attr_name, *args, &block)
end