Sha256: 4c7dc284ab123d77970e19fcc3802931efbdfc61109d4eb0c39daf50cb3340a2
Contents?: true
Size: 603 Bytes
Versions: 3
Compression:
Stored size: 603 Bytes
Contents
module ReportsKit module Reports class ContextualFilter attr_accessor :key, :model_settings delegate :settings_from_model, to: :model_settings def initialize(key, model_class) self.key = key.to_sym self.model_settings = ModelSettings.new(model_class, :contextual_filters, self.key) end def apply(relation, context_params) raise ArgumentError.new("contextual_filter with key :#{key} not defined in #{model_class}") if settings_from_model.blank? settings_from_model[:method].call(relation, context_params) end end end end
Version data entries
3 entries across 3 versions & 1 rubygems