mongodb

Summary

MongoDBBackend([cache_name, connection])

MongoDBCache(db_name, collection_name[, ...])

An async interface for caching objects in MongoDB

MongoDBPickleCache(db_name, collection_name)

Same as MongoDBCache, but pickles values before saving

Module Contents

class MongoDBBackend(cache_name='aiohttp-cache', connection=None, **kwargs)

Bases: CacheBackend

Async cache backend for MongoDB

Notes

  • Requires motor

  • Accepts keyword arguments for pymongo.MongoClient

Parameters:
  • cache_name (str) – Database name

  • connection (AsyncIOMotorClient) – Optional client object to use instead of creating a new one

  • kwargs (Any) – Additional keyword arguments for CacheBackend or backend connection

class MongoDBCache(db_name, collection_name, connection=None, **kwargs)

Bases: BaseCache

An async interface for caching objects in MongoDB

Parameters:
  • db_name (str) – database name (be careful with production databases)

  • collection_name (str) – collection name

  • connection (AsyncIOMotorClient) – MongoDB connection instance to use instead of creating a new one

  • kwargs (Any) – Additional keyword args for AsyncIOMotorClient

async bulk_delete(keys)

Delete item(s) from the cache. Does not raise an error if the item is missing.

Parameters:

keys (set)

async clear()

Delete all items from the cache

async contains(key)

Check if a key is stored in the cache

Parameters:

key (str)

Return type:

bool

async delete(key)

Delete an item from the cache. Does not raise an error if the item is missing.

Parameters:

key (str)

async keys()

Get all keys stored in the cache

Return type:

AsyncIterable[str]

async read(key)

Read an item from the cache. Returns None if the item is missing.

Parameters:

key (str)

Return type:

Union[CachedResponse, bytes, str, None]

async size()

Get the number of items in the cache

Return type:

int

async values()

Get all values stored in the cache

Return type:

AsyncIterable[Union[CachedResponse, bytes, str, None]]

async write(key, item)

Write an item to the cache

Parameters:
class MongoDBPickleCache(db_name, collection_name, connection=None, **kwargs)

Bases: MongoDBCache

Same as MongoDBCache, but pickles values before saving

Parameters:
async read(key)

Read an item from the cache. Returns None if the item is missing.

async values()

Get all values stored in the cache

Return type:

AsyncIterable[Union[CachedResponse, bytes, str, None]]

async write(key, item)

Write an item to the cache