class MongoCollection::MongoCollectionProxy
Public Class Methods
new(collection, klass)
click to toggle source
# File lib/mongo_collection.rb, line 61 def initialize(collection, klass) @class = klass @target = collection end
Public Instance Methods
all()
click to toggle source
# File lib/mongo_collection.rb, line 81 def all self.to_a end
blank?()
click to toggle source
# File lib/mongo_collection.rb, line 105 def blank? self.to_a.blank? end
each(&block)
click to toggle source
# File lib/mongo_collection.rb, line 97 def each(&block) self.to_a.each(&block) end
each_cursor()
click to toggle source
# File lib/mongo_collection.rb, line 93 def each_cursor @target.each end
map(&block)
click to toggle source
# File lib/mongo_collection.rb, line 89 def map(&block) self.to_a.map(&block) end
method_missing(method, *args, &block)
click to toggle source
# File lib/mongo_collection.rb, line 66 def method_missing(method, *args, &block) result = @target.send(method, *args, &block) if result.is_a?(BSON::Document) return @class.from_bson(result) elsif result.is_a?(Fixnum) return result elsif result.is_a?(Array) return result.map{|bson| @class.from_bson(bson)} elsif result.is_a?(TrueClass) || result.is_a?(FalseClass) return result end @target = result self end
sort_by(&block)
click to toggle source
# File lib/mongo_collection.rb, line 85 def sort_by(&block) self.to_a.sort_by(&block) end
to_h()
click to toggle source
# File lib/mongo_collection.rb, line 101 def to_h self.map{|x| x.to_h} end