class CustomAttributes::SearchQueryField
Attributes
fuzziness[R]
operator[R]
query[R]
Public Class Methods
new(field, defaults)
click to toggle source
# File lib/custom_attributes/search_query_field.rb, line 5 def initialize(field, defaults) @defaults = defaults @field = field end
Public Instance Methods
defaults()
click to toggle source
# File lib/custom_attributes/search_query_field.rb, line 38 def defaults @defaults ||= { query: '*' } end
field()
click to toggle source
# File lib/custom_attributes/search_query_field.rb, line 34 def field @field ||= {} end
to_query_hash()
click to toggle source
# File lib/custom_attributes/search_query_field.rb, line 10 def to_query_hash query_hash = {} return query_hash if query == '*' query_hash = query_hash.merge({query: query}) unless query.nil? query_hash = query_hash.merge({fuzziness: fuzziness}) unless fuzziness.nil? || fuzziness.zero? query_hash = query_hash.merge({operator: operator}) unless operator.nil? query_hash end
Private Instance Methods
field_or_default(attribute)
click to toggle source
# File lib/custom_attributes/search_query_field.rb, line 44 def field_or_default(attribute) field[attribute].nil? ? defaults[attribute] : field[attribute] end