Sha256: 2d3b50dfabc16de39a494c49b4b21b878a57cb1dcfdb517b155775a608973ea3

Contents?: true

Size: 689 Bytes

Versions: 24

Compression:

Stored size: 689 Bytes

Contents

module ActiveAdmin
  module ScopeChain
    private
    # 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

24 entries across 24 versions & 3 rubygems

Version Path
date_n_time_picker_activeadmin-0.1.2 vendor/bundle/ruby/2.6.0/gems/activeadmin-2.9.0/lib/active_admin/helpers/scope_chain.rb
date_n_time_picker_activeadmin-0.1.1 vendor/bundle/ruby/2.6.0/gems/activeadmin-2.9.0/lib/active_admin/helpers/scope_chain.rb
activeadmin-2.9.0 lib/active_admin/helpers/scope_chain.rb
activeadmin-2.8.1 lib/active_admin/helpers/scope_chain.rb
activeadmin-2.8.0 lib/active_admin/helpers/scope_chain.rb
activeadmin-2.7.0 lib/active_admin/helpers/scope_chain.rb
activeadmin-2.6.1 lib/active_admin/helpers/scope_chain.rb
activeadmin-2.6.0 lib/active_admin/helpers/scope_chain.rb
activeadmin-2.5.0 lib/active_admin/helpers/scope_chain.rb
activeadmin-2.4.0 lib/active_admin/helpers/scope_chain.rb
activeadmin-2.3.1 lib/active_admin/helpers/scope_chain.rb
activeadmin-2.3.0 lib/active_admin/helpers/scope_chain.rb
activeadmin-2.2.0 lib/active_admin/helpers/scope_chain.rb
activeadmin-2.1.0 lib/active_admin/helpers/scope_chain.rb
activeadmin-2.0.0 lib/active_admin/helpers/scope_chain.rb
activeadmin-2.0.0.rc2 lib/active_admin/helpers/scope_chain.rb
activeadmin_addons-1.7.1 vendor/bundle/ruby/2.3.0/bundler/gems/activeadmin-f71b375325eb/lib/active_admin/helpers/scope_chain.rb
activeadmin-2.0.0.rc1 lib/active_admin/helpers/scope_chain.rb
activeadmin_addons-1.7.0 vendor/bundle/ruby/2.3.0/bundler/gems/activeadmin-f71b375325eb/lib/active_admin/helpers/scope_chain.rb
activeadmin_addons-1.6.0 vendor/bundle/ruby/2.3.0/bundler/gems/activeadmin-f71b375325eb/lib/active_admin/helpers/scope_chain.rb