class Queryko::Base
Attributes
countable_resource[R]
params[R]
relation[RW]
Public Class Methods
call(params = {}, rel = nil)
click to toggle source
# File lib/queryko/base.rb, line 25 def self.call(params = {}, rel = nil) new(params, rel).call end
count(params = {}, rel = nil)
click to toggle source
# File lib/queryko/base.rb, line 53 def self.count(params = {}, rel = nil) new(params, rel).count end
new(params = {}, rel=nil)
click to toggle source
# File lib/queryko/base.rb, line 20 def initialize(params = {}, rel=nil) @relation = @original_relation = rel || self.class.model_class.all @params = self.default_params.merge(params) end
total_count(params = {}, rel = nil)
click to toggle source
# File lib/queryko/base.rb, line 44 def self.total_count(params = {}, rel = nil) new(params, rel).total_count end
Public Instance Methods
call()
click to toggle source
# File lib/queryko/base.rb, line 29 def call perform return relation end
count()
click to toggle source
# File lib/queryko/base.rb, line 57 def count call.to_a.count end
perform()
click to toggle source
# File lib/queryko/base.rb, line 34 def perform return if @performed @performed = true filter filter_by_filters @countable_resource = relation end
total_count()
click to toggle source
# File lib/queryko/base.rb, line 48 def total_count perform countable_resource.count end
Private Instance Methods
config()
click to toggle source
# File lib/queryko/base.rb, line 65 def config @config ||= { } end
filter()
click to toggle source
# File lib/queryko/base.rb, line 70 def filter # overridable method end