Sha256: 5b13f6a92baba31b58ada0c1466da7325fb229bcbe7ddc1b112d609bf09876ad
Contents?: true
Size: 464 Bytes
Versions: 2
Compression:
Stored size: 464 Bytes
Contents
require 'active_support/concern' module ExposeQuery module ControllerDsl extend ActiveSupport::Concern included do cattr_accessor :query_classes def self.expose_query(*filter_classes) self.query_classes = Array.wrap(filter_classes.to_a) end end def apply_filters(source_scope) query_classes ? query_classes.reduce(source_scope){|scope, filter| filter.new(self).apply(scope)} : source_scope end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
expose_query-0.0.2 | lib/expose_query/controller_dsl.rb |
expose_query-0.0.1 | lib/expose_query/controller_dsl.rb |