Sha256: fc2004c02fa6bac62b5e21da2347f7a7ea3bfb0f914db5dc3b64027e12b13af0

Contents?: true

Size: 677 Bytes

Versions: 44

Compression:

Stored size: 677 Bytes

Contents

module ActiveAdmin
  module ScopeChain
    # Scope an ActiveRecord::Relation chain
    #
    # Example:
    #   scope_chain(Scope.new(:published), Article)
    #   # => Article.published
    #
    # @param scope The <ActiveAdmin::Scope> we want to scope on
    # @param chain The ActiveRecord::Relation chain or ActiveRecord::Base class to scope
    # @return <ActiveRecord::Relation or ActiveRecord::Base> The scoped relation chain
    #
    def scope_chain(scope, chain)
      if scope.scope_method
        chain.public_send scope.scope_method
      elsif scope.scope_block
        instance_exec chain, &scope.scope_block
      else
        chain
      end
    end
  end
end

Version data entries

44 entries across 44 versions & 6 rubygems

Version Path
activeadmin_addons-1.1.0 vendor/bundle/ruby/2.2.0/bundler/gems/activeadmin-a5a53c3f2b8f/lib/active_admin/helpers/scope_chain.rb
activeadmin_addons-1.0.1 vendor/bundle/ruby/2.2.0/bundler/gems/activeadmin-a5a53c3f2b8f/lib/active_admin/helpers/scope_chain.rb
activeadmin_addons-1.0.0 vendor/bundle/ruby/2.2.0/bundler/gems/activeadmin-a5a53c3f2b8f/lib/active_admin/helpers/scope_chain.rb
activeadmin-1.1.0 lib/active_admin/helpers/scope_chain.rb
yousty-activeadmin-1.0.15.pre lib/active_admin/helpers/scope_chain.rb
activeadmin-1.0.0 lib/active_admin/helpers/scope_chain.rb
activeadmin-1.0.0.pre5 lib/active_admin/helpers/scope_chain.rb
activeadmin-orac-1.0.0.pre4 lib/active_admin/helpers/scope_chain.rb
activeadmin-orac-1.0.0 lib/active_admin/helpers/scope_chain.rb
activeadmin-orac-1.0.0.pre.orac lib/active_admin/helpers/scope_chain.rb
yousty-activeadmin-1.0.14.pre lib/active_admin/helpers/scope_chain.rb
yousty-activeadmin-1.0.13.pre lib/active_admin/helpers/scope_chain.rb
yousty-activeadmin-1.0.12.pre lib/active_admin/helpers/scope_chain.rb
yousty-activeadmin-1.0.11.pre lib/active_admin/helpers/scope_chain.rb
yousty-activeadmin-1.0.10.pre lib/active_admin/helpers/scope_chain.rb
yousty-activeadmin-1.0.9.pre lib/active_admin/helpers/scope_chain.rb
yousty-activeadmin-1.0.8.pre lib/active_admin/helpers/scope_chain.rb
activeadmin-1.0.0.pre4 lib/active_admin/helpers/scope_chain.rb
activeadmin-1.0.0.pre3 lib/active_admin/helpers/scope_chain.rb
activeadmin-1.0.0.pre2 lib/active_admin/helpers/scope_chain.rb