Module: MongoBijou
- Defined in:
- lib/mongo_bijou.rb,
lib/mongo_bijou/client.rb,
lib/mongo_bijou/boaster.rb,
lib/mongo_bijou/crusher.rb,
lib/mongo_bijou/murderer.rb
Overview
Module to supply class objects with mongodb storage.
Defined Under Namespace
Modules: Boaster, Murderer Classes: Client, Crusher
Constant Summary collapse
- CORE_TYPES =
[Fixnum, String, TrueClass, FalseClass, Bignum, Array, Hash, NilClass]
Instance Attribute Summary collapse
-
#config_attr ⇒ Object
Returns the value of attribute config_attr.
Class Method Summary collapse
Instance Method Summary collapse
-
#attr_defaults ⇒ Object
Default configuration for object attributes to be saved in db - all.
- #db_name=(name) ⇒ Object
-
#mongo_store ⇒ Object
Call this method on object to perform saving object with configured attributes.
Instance Attribute Details
#config_attr ⇒ Object
Returns the value of attribute config_attr.
6 7 8 |
# File 'lib/mongo_bijou.rb', line 6 def config_attr @config_attr end |
Class Method Details
Instance Method Details
#attr_defaults ⇒ Object
Default configuration for object attributes to be saved in db - all.
14 15 16 |
# File 'lib/mongo_bijou.rb', line 14 def attr_defaults @config_attr = crusher.to_hash(self) end |
#db_name=(name) ⇒ Object
18 19 20 |
# File 'lib/mongo_bijou.rb', line 18 def db_name=(name) Client.instance.db_name = name end |
#mongo_store ⇒ Object
Call this method on object to perform saving object with configured attributes.
24 25 26 27 28 29 |
# File 'lib/mongo_bijou.rb', line 24 def mongo_store attr_defaults if config_attr.nil? attr = crusher.crush(config_attr) client = Client.instance.client[collection_name] client.insert_one(attr).inserted_id.to_s end |