Class: Filter

Inherits:
ActiveRecord::Base
  • Object
show all
Defined in:
lib/generators/basepack/templates/filter.rb

Overview

Schema Information

Table name: filters

id :integer not null, primary key filter_type :string(255) user_id :integer not null name :string(255) default(""), not null filter :text default(""), not null description :text active :boolean default(TRUE) position :integer default(0), not null created_at :datetime updated_at :datetime

Instance Method Summary collapse

Instance Method Details

#results(scope, current_ability, filterql_options = {}) ⇒ Object

exec the filter and resturns the collection



34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
# File 'lib/generators/basepack/templates/filter.rb', line 34

def results(scope, current_ability, filterql_options = {})
 resource_class = self.filter_type.constantize
 resource_filter, filtered_scope = Basepack::Utils.filter(
   scope,
   { ql: self.filter },
   Basepack::Utils.model_config(resource_class),
   {
     auth_object: current_ability,
     filterql_options: filterql_options
   }
 )
 raise resource_filter.errors[:base] if resource_filter.errors[:base]

 #[resource_filter, filtered_scope]
 filtered_scope
end