Welcome to mango’s documentation!

Contents:

Mango

A wrapper module that provides simple basic MongoDb operations.

date: 2016-12-19 license: MIT

changes:

2017-09-08
  • Changed pattern: modular to object oriented which make available to connect multiple databases
  • Version bumped: 0.2
2016-12-19
  • web2py DAL support
  • development started
  • stable release
  • Version bumped: 0.1.7
class mango.Mango(uri=None)[source]

PyMongo Wrapper: Mango

count(table_name, cond=None, **kwargs)[source]

MongoDb count wrapper function.

Args:
table_name ([type]): [description] cond ([type], optional): Defaults to None. [description]
Returns:
[type]: [description]
delete(table_name, cond=None, is_many=False, **kwargs)[source]

MongoDb delete wrapper function.

Args:
table_name ([type]): [description] cond ([type], optional): Defaults to None. [description] is_many (bool, optional): Defaults to False. [description]
Returns:
[type]: [description]
get_table(table_name)[source]

Get the table object by table_name.

Args:
table_name ([type]): [description]
Returns:
[type]: [description]
insert(table_name, value=None, is_many=False, **kwargs)[source]

MongoDb insert wrapper function.

Args:
table_name ([type]): [description] value ([type], optional): Defaults to None. [description] is_many (bool, optional): Defaults to False. [description]
Returns:
[type]: [description]
select(table_name, cond=None, is_many=False, to_web2py_id=False, **kwargs)[source]

MongoDb find wrapper function.

Args:
table_name ([type]): [description] cond ([type], optional): Defaults to None. [description] is_many (bool, optional): Defaults to False. [description] to_web2py_id (bool, optional): Defaults to False. [description]
Returns:
[type]: [description]
update(table_name, cond=None, value=None, is_many=False, operator='$set', **kwargs)[source]

MongoDb update wrapper function.

Args:

table_name ([type]): [description] cond ([type], optional): Defaults to None. [description] value ([type], optional): Defaults to None.

If operator is provided in value, operator argument will be ignored.

is_many (bool, optional): Defaults to False. [description] operator (str, optional): Defaults to “$set”. [description]

Returns:
[type]: [description]
mango.encoding_handler(value, encoding='utf8')[source]

To handle string encoding.

Returns:
[type]: [description]
mango.object_id(arg=None)[source]

Convert input to a valid Mongodb ObjectId instance. object_id(“<random>”) -> ObjectId (not unique) instance

REF: web2py’s dal

Args:
arg ([type], optional): Defaults to None. [description]
Raises:

ValueError: Invalid ObjectID argument string ValueError: Invalid ObjectID. Requires an integer or base 16 value TypeError: object_id argument must be of type ObjectID or an objectid

representable integer.
Returns:
ObjectId: Mongodb ObjectId
mango.to_w2p_id(records, to_web2py_id=False, to_str=True)[source]

Convert ObjectId of records to web2py compitible ID.

Args:
records ([type]): [description] to_web2py_id (bool, optional): Defaults to False. [description] to_str (bool, optional): Defaults to True. [description]
Returns:
[type]: [description]
mango.w2p_id(arg=None, to_str=True)[source]

Convert ObjectId to web2py ID.

REF: web2py’s dal

Args:
arg ([type], optional): Defaults to None. [description] to_str (bool, optional): Defaults to True. [description]
Raises:
TypeError: [description]
Returns:
[type]: [description]

Indices and tables