lib/aggrobot.rb in aggrobot-0.0.2 vs lib/aggrobot.rb in aggrobot-0.1.0
- old
+ new
@@ -1,5 +1,6 @@
+require 'active_record'
require 'aggrobot/railtie'
require 'active_support/core_ext/module/delegation.rb'
require 'active_support/core_ext/hash/indifferent_access'
require 'aggrobot/version'
require 'aggrobot/aggrobot_error'
@@ -7,15 +8,17 @@
require 'aggrobot/sql_functions'
require 'aggrobot/query_planner'
require 'aggrobot/aggregator'
require 'aggrobot/aggrobot'
-
module Aggrobot
- DEFAULT_GROUP_BY = SqlFunctions.sanitize('aggrobot_default_group')
+ DEFAULT_GROUP_BY = 1 #'aggrobot_default_group'
+ # when
+ # collection is given, starts aggregation by evaluating block on collection
+ # collection is not given, starts aggregation by evaluating block on full data set
def self.start(collection = nil, block_arg = nil, block_opts = nil, &block)
block_opts ||= block_arg if block
block = block_arg if block_arg && block_arg.respond_to?(:call)
raise 'Block parameter required' unless block
original_block_context = eval "self", block.binding
@@ -27,10 +30,11 @@
def self.block(&block)
block
end
+ # sets ROUNDING_DIGITS to percent_precision, default is 2
def self.setup(app)
- SqlFunctions.const_set(:ROUNDING_DIGITS, app.config.aggrobot.percent_precision || 2)
+ SQLFunctions.setup(app.config.aggrobot.percent_precision)
end
end
\ No newline at end of file