Install with:
$ pip install django-cache-with-mongodb
Add the following to your Django settings::
CACHES = {
'default': {
'BACKEND': 'django_cache_with_mongodb.MongoDBCache',
"LOCATION": "[mongodb://][username:password@]host1[:port1][,...hostN[:portN]][/[defaultdb][?options]]",
"OPTIONS": {
"USERNAME": "username_if_desired",
"PASSWORD": "password_if_needed",
"DATABASE": "cache_db_name", # in not supplied in URI
"COLLECTION": "cache_collection", # default: django_cache
# Any Connection Options supported by pymongo
},
"TIMEOUT": 86400, # either set TIMEOUT or MAX_ENTRIES, not both
"MAX_ENTRIES": 10000, # either set MAX_ENTRIES or TIMEOUT, not both
}
}
Location supports MongoDB Connection String. Additionally, any supported pymongo parameters could be
Any supported pymongo parameters could be added to OPTIONS.
The backend will handle TTL index creation if TIMEOUT is set, or will create a capped collection if MAX_ENTRIES is set. You should ensure that the collections are not created beforehands, so that the backend can do its work correctly.