diff options
author | Michael Koziarski <michael@koziarski.com> | 2007-11-21 01:51:57 +0000 |
---|---|---|
committer | Michael Koziarski <michael@koziarski.com> | 2007-11-21 01:51:57 +0000 |
commit | 7d459203eedc32f1a88e98acc4b2a4f32a7683f4 (patch) | |
tree | 3e33990806b45749ba84ea22acc4f722bb16a5ea /activerecord/lib | |
parent | cf1217a742d1177fee38e4add2acc2f210a8ee7f (diff) | |
download | rails-7d459203eedc32f1a88e98acc4b2a4f32a7683f4.tar.gz rails-7d459203eedc32f1a88e98acc4b2a4f32a7683f4.tar.bz2 rails-7d459203eedc32f1a88e98acc4b2a4f32a7683f4.zip |
Make Dynamic Finders on Association Collections Respect Association :order [patrick.t.joyce, technoweenie]. Closes #10211
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@8174 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
Diffstat (limited to 'activerecord/lib')
3 files changed, 4 insertions, 3 deletions
diff --git a/activerecord/lib/active_record/associations/has_and_belongs_to_many_association.rb b/activerecord/lib/active_record/associations/has_and_belongs_to_many_association.rb index 13c99455c0..0a03efa5e4 100644 --- a/activerecord/lib/active_record/associations/has_and_belongs_to_many_association.rb +++ b/activerecord/lib/active_record/associations/has_and_belongs_to_many_association.rb @@ -133,7 +133,7 @@ module ActiveRecord end def construct_scope - { :find => { :conditions => @finder_sql, :joins => @join_sql, :readonly => false } } + { :find => { :conditions => @finder_sql, :joins => @join_sql, :readonly => false, :order => @reflection.options[:order] } } end # Join tables with additional columns on top of the two foreign keys must be considered ambiguous unless a select diff --git a/activerecord/lib/active_record/associations/has_many_association.rb b/activerecord/lib/active_record/associations/has_many_association.rb index 2880bde3a4..972745ee31 100644 --- a/activerecord/lib/active_record/associations/has_many_association.rb +++ b/activerecord/lib/active_record/associations/has_many_association.rb @@ -167,7 +167,7 @@ module ActiveRecord def construct_scope create_scoping = {} set_belongs_to_association_for(create_scoping) - { :find => { :conditions => @finder_sql, :readonly => false }, :create => create_scoping } + { :find => { :conditions => @finder_sql, :readonly => false, :order => @reflection.options[:order] }, :create => create_scoping } end end end diff --git a/activerecord/lib/active_record/associations/has_many_through_association.rb b/activerecord/lib/active_record/associations/has_many_through_association.rb index 8bff88e839..a9cacb09c8 100644 --- a/activerecord/lib/active_record/associations/has_many_through_association.rb +++ b/activerecord/lib/active_record/associations/has_many_through_association.rb @@ -235,7 +235,8 @@ module ActiveRecord :find => { :from => construct_from, :conditions => construct_conditions, :joins => construct_joins, - :select => construct_select } } + :select => construct_select, + :order => @reflection.options[:order] } } end def construct_sql |