Class: Sunspot::Query::DynamicQuery
- Inherits:
-
FieldQuery
- Object
- Scope
- FieldQuery
- Sunspot::Query::DynamicQuery
- Defined in:
- lib/sunspot/query/dynamic_query.rb
Overview
A dynamic query is a proxy object that implements the API of the FieldQuery class, but wraps a dynamic field factory and thus applies the query components using dynamic field instances. – Dynamic queries do not hold their own state, but rather proxy to the query that generated them, adding components directly to the owning query’s internal state. ++ DynamicQuery instances are publicly generated by the Query#dynamic_query factory method.
Instance Method Summary collapse
-
#add_component(component) ⇒ Object
Add a component to the query.
-
#add_sort(sort) ⇒ Object
Add a Sort to the query.
-
#dynamic_query(field_name) ⇒ Object
This has the same effect as calling Query#exclude_instance; it is included for interface completeness.
-
#exclude_instance(instance) ⇒ Object
This has the same effect as calling Query#exclude_instance; it is included for interface completeness.
-
#initialize(dynamic_field_factory, query) ⇒ DynamicQuery
constructor
:nodoc:.
Methods inherited from FieldQuery
#add_field_facet, #add_query_facet, #order_by
Methods inherited from Scope
#add_conjunction, #add_disjunction, #add_negated_restriction, #add_negated_shorthand_restriction, #add_restriction, #add_shorthand_restriction
Constructor Details
#initialize(dynamic_field_factory, query) ⇒ DynamicQuery
:nodoc:
16 17 18 |
# File 'lib/sunspot/query/dynamic_query.rb', line 16 def initialize(dynamic_field_factory, query) #:nodoc: @dynamic_field_factory, @query = dynamic_field_factory, query end |
Instance Method Details
#add_component(component) ⇒ Object
Add a component to the query
46 47 48 |
# File 'lib/sunspot/query/dynamic_query.rb', line 46 def add_component(component) #:nodoc: @query.add_component(component) end |
#add_sort(sort) ⇒ Object
Add a Sort to the query
39 40 41 |
# File 'lib/sunspot/query/dynamic_query.rb', line 39 def add_sort(sort) #:nodoc: @query.add_sort(sort) end |
#dynamic_query(field_name) ⇒ Object
This has the same effect as calling Query#exclude_instance; it is included for interface completeness.
32 33 34 |
# File 'lib/sunspot/query/dynamic_query.rb', line 32 def dynamic_query(field_name) @query.dynamic_query(field_name) end |
#exclude_instance(instance) ⇒ Object
This has the same effect as calling Query#exclude_instance; it is included for interface completeness.
24 25 26 |
# File 'lib/sunspot/query/dynamic_query.rb', line 24 def exclude_instance(instance) @query.exclude_instance(instance) end |