diff options
Diffstat (limited to 'activerecord/lib')
-rwxr-xr-x | activerecord/lib/active_record/associations.rb | 2 | ||||
-rwxr-xr-x | activerecord/lib/active_record/base.rb | 9 |
2 files changed, 6 insertions, 5 deletions
diff --git a/activerecord/lib/active_record/associations.rb b/activerecord/lib/active_record/associations.rb index f9713199d5..5921492433 100755 --- a/activerecord/lib/active_record/associations.rb +++ b/activerecord/lib/active_record/associations.rb @@ -1170,7 +1170,7 @@ module ActiveRecord sql << "GROUP BY #{options[:group]} " if options[:group] - add_order!(sql, options[:order]) + add_order!(sql, options[:order], scope) add_limit!(sql, options, scope) if using_limitable_reflections?(join_dependency.reflections) return sanitize_sql(sql) diff --git a/activerecord/lib/active_record/base.rb b/activerecord/lib/active_record/base.rb index c35453f326..864cf43ef3 100755 --- a/activerecord/lib/active_record/base.rb +++ b/activerecord/lib/active_record/base.rb @@ -648,9 +648,10 @@ module ActiveRecord #:nodoc: key end - # Defines the column name for use with single table inheritance -- can be overridden in subclasses. + # Defines the column name for use with single table inheritance + # -- can be set in subclasses like so: self.inheritance_column = "type_id" def inheritance_column - "type" + @inheritance_column ||= "type".freeze end # Lazy-set the sequence name to the connection's default. This method @@ -800,7 +801,7 @@ module ActiveRecord #:nodoc: # Resets all the cached information about columns, which will cause them to be reloaded on the next request. def reset_column_information read_methods.each { |name| undef_method(name) } - @column_names = @columns = @columns_hash = @content_columns = @dynamic_methods_hash = @read_methods = nil + @column_names = @columns = @columns_hash = @content_columns = @dynamic_methods_hash = @read_methods = @inheritance_column = nil end def reset_column_information_and_inheritable_attributes_for_all_subclasses#:nodoc: @@ -1057,7 +1058,7 @@ module ActiveRecord #:nodoc: # Ignore type if no column is present since it was probably # pulled in from a sloppy join. - unless self.columns_hash.include?(inheritance_column) + unless columns_hash.include?(inheritance_column) allocate else |