Settings¶
Client Settings¶
Additional flags may be passed to pymongo.MongoClient using the
OPTIONS dictionary:
DATABASES = {
'default' : {
'ENGINE' : 'django_mongodb_engine',
'NAME' : 'my_database',
...
'OPTIONS' : {
'socketTimeoutMS' : 500,
...
}
}
}
All of these settings directly mirror PyMongo settings. In fact, all Django
MongoDB Engine does is lower-casing the names before passing the flags to
MongoClient. For a list of possible options head over to the
PyMongo documentation on client options.
Acknowledged Operations¶
Use the OPERATIONS dict to specify extra flags passed to
Collection.save,
update() or
remove() (and thus included in the write concern):
'OPTIONS' : {
'OPERATIONS' : {'w' : 3},
...
}
Get a more fine-grained setup by introducing another layer to this dict:
'OPTIONS' : {
'OPERATIONS' : {
'save' : {'w' : 3},
'update' : {},
'delete' : {'j' : True}
},
...
}
Note
This operations map to the Django operations save, update and delete (not to MongoDB operations). This is because Django abstracts “insert vs. update” into save.
A full list of write concern flags may be found in the MongoDB documentation.