module Mongoid::Extensions::Range::ClassMethods
Public Instance Methods
demongoize(object)
click to toggle source
Convert the object from its mongo friendly ruby type to this type.
@example Demongoize the object.
Range.demongoize({ "min" => 1, "max" => 5 })
@param [ Hash
] object The object to demongoize.
@return [ Range
] The range.
@since 3.0.0
# File lib/mongoid/extensions/range.rb, line 57 def demongoize(object) object.nil? ? nil : ::Range.new(object["min"], object["max"], object["exclude_end"]) end
mongoize(object)
click to toggle source
Turn the object from the ruby type we deal with to a Mongo friendly type.
@example Mongoize the object.
Range.mongoize(1..3)
@param [ Range
] object The object to mongoize.
@return [ Hash
] The object mongoized.
@since 3.0.0
# File lib/mongoid/extensions/range.rb, line 72 def mongoize(object) return nil if object.nil? return object if object.is_a?(::Hash) return object if object.is_a?(String) hash = { "min" => object.first, "max" => object.last } if object.respond_to?(:exclude_end?) && object.exclude_end? hash.merge!("exclude_end" => true) end hash end