Module: MongoidExtended

Defined in:
lib/mongoid_extended.rb,
lib/mongoid_extended/version.rb,
lib/mongoid_extended/object_id.rb,
lib/mongoid_extended/epoch_time.rb,
lib/mongoid_extended/serializer.rb,
lib/mongoid_extended/soft_delete.rb

Defined Under Namespace

Modules: EpochTime, ObjectId, Serializer, SoftDelete Classes: GemsLoadError

Constant Summary collapse

VERSION =
'0.1.2'

Class Method Summary collapse

Class Method Details

.configure(*module_names) ⇒ Object

configure method is used for select extend modules

Examples:

Use soft delete module and object id module

MongoidExtended.configure(:SoftDelete, :ObjectId)


22
23
24
25
26
27
28
29
30
31
# File 'lib/mongoid_extended.rb', line 22

def configure *module_names
  module_names.each do |module_name|
    if const_defined?(module_name)
      klass = ::Object.const_get("MongoidExtended::#{module_name}")
      klass.configured unless klass.configured?
    else
      raise NameError, "uninitialized constant `#{module_name}` in MongoidExtended"
    end
  end
end