Class: Filterameter::Filters::NestedFilter
- Inherits:
-
Object
- Object
- Filterameter::Filters::NestedFilter
- Defined in:
- lib/filterameter/filters/nested_filter.rb
Overview
Nested Attribute Filter
Class NestedFilter joins the nested table(s) then merges the filter to the association’s model.
Instance Method Summary collapse
- #apply(query, value) ⇒ Object
-
#initialize(joins_values, association_model, attribute_filter) ⇒ NestedFilter
constructor
A new instance of NestedFilter.
Constructor Details
#initialize(joins_values, association_model, attribute_filter) ⇒ NestedFilter
Returns a new instance of NestedFilter.
9 10 11 12 13 |
# File 'lib/filterameter/filters/nested_filter.rb', line 9 def initialize(joins_values, association_model, attribute_filter) @joins_values = joins_values @association_model = association_model @attribute_filter = attribute_filter end |
Instance Method Details
#apply(query, value) ⇒ Object
15 16 17 18 |
# File 'lib/filterameter/filters/nested_filter.rb', line 15 def apply(query, value) query.joins(@joins_values) .merge(@attribute_filter.apply(@association_model, value)) end |