3. API References¶
3.1. Basic¶
-
class
mongu.
Client
(*args, **kwargs)¶ For Connecting to MongoDB and registering model classes.
-
enable_counter
(base=None, database='counter', collection='counters')¶ Register the builtin counter model, return the registered Counter class and the corresponding
CounterMixin
class.The
CounterMixin
automatically increases and decreases the counter after model creation(save without_id
) and deletion.It contains a classmethod
count()
which returns the current count of the model collection.
-
register_model
(model_cls)¶ Decorator for registering model.
-
3.2. Extra¶
-
class
mongu.
ObjectDict
¶ Makes a dictionary behave like an object, with attribute-style access.
3.3. Base Model¶
-
class
mongu.
Model
¶ Dict-like class with optional default key-values that binds to a collection.
-
classmethod
by_id
(oid)¶ Find a model object by its
ObjectId
,oid
can be string or ObjectId
-
classmethod
delete_by_id
(oid)¶ Delete a document from collection by its
ObjectId
,oid
can be string or ObjectId
-
classmethod
from_dict
(d)¶ Build model object from a dict. Will be removed in v1.0
-
classmethod
from_cursor
(cursor)¶ Build model object from a pymongo cursor.
-
classmethod
find
(*args, **kwargs)¶ Same as
collection.find
, return model object instead of simple dict.
-
classmethod
find_one
(*args, **kwargs)¶ Same as
collection.find_one
, return model object instead of simple dict.
-
id
¶ String representation of attribute
_id
.
-
reload
(d=None)¶ Reload model from given dict or database.
-
on_save
(old_dict)¶ Hook after save.
-
save
()¶ Save model object to database.
-
on_delete
(deleted_obj)¶ Hook after delete successful.
-
delete
()¶ Remove from database.
-
classmethod
3.4. Builtin Counter¶
For more information: What and Why
-
class
mongu.
Counter
¶ Builtin counter model.
-
classmethod
set_to
(name, num)¶ Set counter of
name
tonum
.
-
classmethod
change_by
(name, num)¶ Change counter of
name
bynum
(can be negative).
-
classmethod
increase
(name)¶ Increase counter of
name
by one.
-
classmethod
decrease
(name)¶ Decrease counter of
name
by one.
-
classmethod
count
(name)¶ Return the count of
name
-
classmethod