Module: Metova::Models::Filterable::ClassMethods
- Defined in:
- lib/metova/models/filterable.rb
Instance Method Summary collapse
Instance Method Details
#filter(target, *filter_attrs) ⇒ Object
12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 |
# File 'lib/metova/models/filterable.rb', line 12 def filter(target, *filter_attrs) if filter_attrs.empty? filter_attrs = @filter_attributes end filter_texts = [] filter_attrs.each do |attr| filter_texts << "#{attr} like ?" end query = [filter_texts.join(' OR ')] filter_texts.count.times { query << "%#{target}%" } where(query) end |
#filter_attributes(arg = nil) ⇒ Object
7 8 9 10 |
# File 'lib/metova/models/filterable.rb', line 7 def filter_attributes(arg = nil) @filter_attributes = arg if arg @filter_attributes end |