Ticket #8470: streamline_generated_method_calls.patch
| File streamline_generated_method_calls.patch, 1.6 kB (added by seth, 2 years ago) |
|---|
-
lib/active_record/base.rb
old new 1621 1621 def id 1622 1622 attr_name = self.class.primary_key 1623 1623 column = column_for_attribute(attr_name) 1624 define_read_method(:id, attr_name, column) if self.class.generate_read_methods 1625 read_attribute(attr_name) 1624 1625 if self.class.generate_read_methods 1626 define_read_method(:id, attr_name, column) 1627 # now that the method exists, call it 1628 self.send attr_name.to_sym 1629 else 1630 read_attribute(attr_name) 1631 end 1626 1632 end 1627 1633 1628 1634 # Enables Active Record objects to be used as URL parameters in Action Pack automatically. … … 1976 1982 (md = /\?$/.match(method_name) and 1977 1983 @attributes.include?(query_method_name = md.pre_match) and 1978 1984 method_name = query_method_name) 1979 define_read_methods if self.class.read_methods.empty? && self.class.generate_read_methods 1980 md ? query_attribute(method_name) : read_attribute(method_name) 1985 if self.class.read_methods.empty? && self.class.generate_read_methods 1986 define_read_methods 1987 # now that the method exists, call it 1988 self.send method_id.to_sym 1989 else 1990 md ? query_attribute(method_name) : read_attribute(method_name) 1991 end 1981 1992 elsif self.class.primary_key.to_s == method_name 1982 1993 id 1983 1994 elsif md = self.class.match_attribute_method?(method_name)