diff options
author | Ben Woosley <ben.woosley@gmail.com> | 2015-03-12 01:01:07 -0700 |
---|---|---|
committer | Ben Woosley <ben.woosley@gmail.com> | 2015-03-12 01:22:39 -0700 |
commit | c1deb81cd005d7091b680ec2089b9b8dba41325f (patch) | |
tree | afa5e340a77c2ba1592db41c3e79290df9fe6cf0 /activerecord/lib/active_record/scoping.rb | |
parent | fd3e63e2d9701f995f56c3dd6dcd30c73bd518b2 (diff) | |
download | rails-c1deb81cd005d7091b680ec2089b9b8dba41325f.tar.gz rails-c1deb81cd005d7091b680ec2089b9b8dba41325f.tar.bz2 rails-c1deb81cd005d7091b680ec2089b9b8dba41325f.zip |
Isolate access to .default_scopes in ActiveRecord::Scoping::Default
Instead use .scope_attributes? consistently in ActiveRecord to check whether
there are attributes currently associated with the scope.
Move the implementation of .scope_attributes? and .scope_attributes to
ActiveRecord::Scoping because they don't particularly have to do specifically
with Named scopes and their only dependency, in the case of
.scope_attributes?, and only caller, in the case of .scope_attributes is
contained in Scoping.
Diffstat (limited to 'activerecord/lib/active_record/scoping.rb')
-rw-r--r-- | activerecord/lib/active_record/scoping.rb | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/activerecord/lib/active_record/scoping.rb b/activerecord/lib/active_record/scoping.rb index fca4f1c9d3..f049b658c4 100644 --- a/activerecord/lib/active_record/scoping.rb +++ b/activerecord/lib/active_record/scoping.rb @@ -17,6 +17,17 @@ module ActiveRecord def current_scope=(scope) #:nodoc: ScopeRegistry.set_value_for(:current_scope, self.to_s, scope) end + + # Collects attributes from scopes that should be applied when creating + # an AR instance for the particular class this is called on. + def scope_attributes # :nodoc: + all.scope_for_create + end + + # Are there attributes associated with this scope? + def scope_attributes? # :nodoc: + current_scope + end end def populate_with_current_scope_attributes |