Sha256: da9a5b54739dca4bf5b6aac1beb2e7d3e9a1785d9565550c293ee859783c4d53
Contents?: true
Size: 938 Bytes
Versions: 2
Compression:
Stored size: 938 Bytes
Contents
module Mongoid module Contexts module Ids # Return documents based on an id search. Will handle if a single id has # been passed or mulitple ids. # # Example: # # context.id_criteria([1, 2, 3]) # # Returns: # # The single or multiple documents. def id_criteria(params) criteria.id(strings_to_object_ids(params)) params.is_a?(Array) ? criteria.entries : one end protected # Convert ids from strings to +Mongo::ObjectID+s def strings_to_object_ids(ids) if Array === ids ids.map {|id| string_to_object_id(id) } else string_to_object_id(ids) end end # Convert ids from strings to +Mongo::ObjectID+s def string_to_object_id(id) if String === id ::Mongo::ObjectID.from_string(id) else id end end end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
mongo_doc-0.4.2 | lib/mongo_doc/contexts/ids.rb |
mongo_doc-0.4.1 | lib/mongo_doc/contexts/ids.rb |