lib/active_house/collectable.rb in active_house-0.3.2 vs lib/active_house/collectable.rb in active_house-0.4.0
- old
+ new
@@ -1,7 +1,8 @@
require 'active_support/concern'
require 'active_support/core_ext/string/filters'
+require 'active_support/core_ext/module/delegation'
module ActiveHouse
module Collectable
extend ActiveSupport::Concern
@@ -24,16 +25,20 @@
def to_hashes
connection.select_rows(to_query.squish)
end
- private
-
def collection
@collection ||= fetch_collection
end
def fetch_collection
to_hashes.map { |row| model_class.load!(row) }
+ end
+
+ included do
+ private :collection, :fetch_collection
+ delegate :each, :size, :count, :map, :collect, :detect, :filter, :reject, :inject, :reduce, :all?, :any?,
+ to: :to_a
end
end
end