Module: MongoMapper

Defined in:
lib/mongo_mapper/serialization.rb,
lib/mongo_mapper.rb,
lib/mongo_mapper/key.rb,
lib/mongo_mapper/dirty.rb,
lib/mongo_mapper/document.rb,
lib/mongo_mapper/callbacks.rb,
lib/mongo_mapper/observing.rb,
lib/mongo_mapper/pagination.rb,
lib/mongo_mapper/validations.rb,
lib/mongo_mapper/associations.rb,
lib/mongo_mapper/dynamic_finder.rb,
lib/mongo_mapper/finder_options.rb,
lib/mongo_mapper/associations/base.rb,
lib/mongo_mapper/embedded_document.rb,
lib/mongo_mapper/associations/proxy.rb,
lib/mongo_mapper/associations/many_proxy.rb,
lib/mongo_mapper/serializers/json_serializer.rb,
lib/mongo_mapper/rails_compatibility/document.rb,
lib/mongo_mapper/associations/belongs_to_proxy.rb,
lib/mongo_mapper/associations/many_embedded_proxy.rb,
lib/mongo_mapper/associations/many_documents_proxy.rb,
lib/mongo_mapper/associations/many_polymorphic_proxy.rb,
lib/mongo_mapper/associations/many_documents_as_proxy.rb,
lib/mongo_mapper/rails_compatibility/embedded_document.rb,
lib/mongo_mapper/associations/belongs_to_polymorphic_proxy.rb,
lib/mongo_mapper/associations/many_embedded_polymorphic_proxy.rb

Overview

:nodoc:

Defined Under Namespace

Modules: Associations, Callbacks, Dirty, Document, EmbeddedDocument, Finders, Observing, Pagination, RailsCompatibility, Serialization, Validations Classes: DocumentNotFound, DocumentNotValid, DynamicFinder, FinderOperator, FinderOptions, Key, KeyNotFound, MongoMapperError, Observer

Class Method Summary collapse

Class Method Details

.connectionObject



23
24
25
# File 'lib/mongo_mapper.rb', line 23

def self.connection
  @@connection ||= Mongo::Connection.new
end

.connection=(new_connection) ⇒ Object



28
29
30
# File 'lib/mongo_mapper.rb', line 28

def self.connection=(new_connection)
  @@connection = new_connection
end

.databaseObject



44
45
46
47
48
49
50
# File 'lib/mongo_mapper.rb', line 44

def self.database
  if @@database_name.blank?
    raise 'You forgot to set the default database name: MongoMapper.database = "foobar"'
  end
  
  @@database ||= MongoMapper.connection.db(@@database_name)
end

.database=(name) ⇒ Object



38
39
40
41
# File 'lib/mongo_mapper.rb', line 38

def self.database=(name)
  @@database = nil
  @@database_name = name
end

.ensure_index(klass, keys, options = {}) ⇒ Object

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.



58
59
60
# File 'lib/mongo_mapper.rb', line 58

def self.ensure_index(klass, keys, options={})
  ensured_indexes << {:klass => klass, :keys => keys, :options => options}
end

.ensure_indexes!Object



63
64
65
66
67
68
# File 'lib/mongo_mapper.rb', line 63

def self.ensure_indexes!
  ensured_indexes.each do |index|
    unique = index[:options].delete(:unique)
    index[:klass].collection.create_index(index[:keys], unique)
  end
end

.ensured_indexesObject

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.



53
54
55
# File 'lib/mongo_mapper.rb', line 53

def self.ensured_indexes
  @@ensured_indexes ||= []
end

.loggerObject



33
34
35
# File 'lib/mongo_mapper.rb', line 33

def self.logger
  connection.logger
end

.normalize_object_id(value) ⇒ Object



105
106
107
# File 'lib/mongo_mapper.rb', line 105

def self.normalize_object_id(value)
  value.is_a?(String) ? Mongo::ObjectID.from_string(value) : value
end

.time_classObject

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.



101
102
103
# File 'lib/mongo_mapper.rb', line 101

def self.time_class
  use_time_zone? ? Time.zone : Time
end

.use_time_zone?Boolean

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.

Returns:



96
97
98
# File 'lib/mongo_mapper.rb', line 96

def self.use_time_zone?
  Time.respond_to?(:zone) && Time.zone ? true : false
end