Sha256: 48b4ab1aba85a4288be026bda5db9f7fbd74d07c776adc90fabbe32c85588b21
Contents?: true
Size: 764 Bytes
Versions: 1
Compression:
Stored size: 764 Bytes
Contents
# frozen_string_literal: true # Define range filter rule # module QueryFilter module Rules class Range < Scope def initialize(keys, options = {}) @key = Array(keys).first super([key_from, key_to], options) end def name 'range' end def valid?(values) filter = build_range_from_params(values) filter.valid? end def normalize_params(values) build_range_from_params(values) end protected def build_range_from_params(params) QueryFilter::Utils::ScopeRange.new(key, params) end def key_from @key_from ||= "#{key}_from".to_sym end def key_to @key_to ||= "#{key}_to".to_sym end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
query_filter-0.2.3 | lib/query_filter/rules/range.rb |