Sha256: 4d114e514c3a928bd40fd2782b34a3010ea6e974bf5e1444a8ed698c2ac87624

Contents?: true

Size: 392 Bytes

Versions: 140

Compression:

Stored size: 392 Bytes

Contents

module WithScopedQueries::Filter
  def self.query_by(params, current_scope, _)
    params.to_h.inject(current_scope) do |scope, (field, value)|
      if value.present?
        scope.public_send("by_#{field}", value)
      else
        scope
      end
    end
  end

  def self.add_queriable_attributes_to(klass, attributes)
    klass.queriable_attributes.merge!(filter: attributes)
  end
end

Version data entries

140 entries across 140 versions & 2 rubygems

Version Path
mumuki-domain-9.7.0 app/models/concerns/with_scoped_queries/filter.rb
mumuki-domain-9.6.0 app/models/concerns/with_scoped_queries/filter.rb
mumuki-domain-9.5.0 app/models/concerns/with_scoped_queries/filter.rb
mumuki-domain-9.4.0 app/models/concerns/with_scoped_queries/filter.rb
mumuki-domain-9.3.0 app/models/concerns/with_scoped_queries/filter.rb
mumuki-domain-9.2.1 app/models/concerns/with_scoped_queries/filter.rb
mumuki-domain-9.2.0 app/models/concerns/with_scoped_queries/filter.rb
mumuki-domain-9.1.2 app/models/concerns/with_scoped_queries/filter.rb
mumuki-domain-9.1.1 app/models/concerns/with_scoped_queries/filter.rb
mumuki-domain-9.1.0 app/models/concerns/with_scoped_queries/filter.rb
mumuki-domain-9.0.6 app/models/concerns/with_scoped_queries/filter.rb
mumuki-domain-9.0.5 app/models/concerns/with_scoped_queries/filter.rb
mumuki-domain-9.0.4 app/models/concerns/with_scoped_queries/filter.rb
mumuki-domain-9.0.3 app/models/concerns/with_scoped_queries/filter.rb
mumuki-domain-9.0.2 app/models/concerns/with_scoped_queries/filter.rb
mumuki-domain-9.0.0 app/models/concerns/with_scoped_queries/filter.rb
mumuki-domain-8.6.1 app/models/concerns/with_scoped_queries/filter.rb
mumuki-domain-8.6.0 app/models/concerns/with_scoped_queries/filter.rb
mumuki-domain-8.5.0 app/models/concerns/with_scoped_queries/filter.rb
mumuki-domain-8.4.0 app/models/concerns/with_scoped_queries/filter.rb