diff options
author | Jon Leighton <j@jonathanleighton.com> | 2012-04-13 12:58:13 +0100 |
---|---|---|
committer | Jon Leighton <j@jonathanleighton.com> | 2012-04-13 13:17:43 +0100 |
commit | 8d5be98ad72939037f1be52aa4bb4672fff02abb (patch) | |
tree | fd32a9fad31024e4265cf8ff144c3bdc4ee1e5aa /activerecord/lib/active_record/relation/query_methods.rb | |
parent | 55ee6ed7dd22a17499b68bee786da191ce68682c (diff) | |
download | rails-8d5be98ad72939037f1be52aa4bb4672fff02abb.tar.gz rails-8d5be98ad72939037f1be52aa4bb4672fff02abb.tar.bz2 rails-8d5be98ad72939037f1be52aa4bb4672fff02abb.zip |
Make Relation#extending work like other value methods
Diffstat (limited to 'activerecord/lib/active_record/relation/query_methods.rb')
-rw-r--r-- | activerecord/lib/active_record/relation/query_methods.rb | 15 |
1 files changed, 6 insertions, 9 deletions
diff --git a/activerecord/lib/active_record/relation/query_methods.rb b/activerecord/lib/active_record/relation/query_methods.rb index 10492165fb..eaa3ddaec8 100644 --- a/activerecord/lib/active_record/relation/query_methods.rb +++ b/activerecord/lib/active_record/relation/query_methods.rb @@ -10,7 +10,9 @@ module ActiveRecord :where_values, :having_values, :bind_values, :limit_value, :offset_value, :lock_value, :readonly_value, :create_with_value, :from_value, :reordering_value, :reverse_order_value, - :uniq_value, :references_values + :uniq_value, :references_values, :extending_values + + alias extensions extending_values def includes(*args) args.empty? ? self : clone.includes!(*args) @@ -353,7 +355,9 @@ module ActiveRecord def extending!(*modules, &block) modules << Module.new(&block) if block_given? - self.send(:apply_modules, modules.flatten) + self.extending_values = modules.flatten + extend(*extending_values) + self end @@ -494,13 +498,6 @@ module ActiveRecord end end - def apply_modules(modules) - unless modules.empty? - @extensions += modules - modules.each {|extension| extend(extension) } - end - end - def reverse_sql_order(order_query) order_query = ["#{quoted_table_name}.#{quoted_primary_key} ASC"] if order_query.empty? |