MongoFrames is a fast unobtrusive MongoDB ODM for Python designed to fit into a workflow not dictate one.

**Core features include:** - Simple schema definitions for document and embedded documents - Dot notation access to document fields - Friendly queries - Fast dereferencing & multi-tiered projections - Pagination support - Event handling for key document actions (e.g insert, update, delete)

Code Quality Rank: L4
Programming language: Python
License: MIT License
Tags: Database     NoSQL Databases     ORM    
Latest version: v1.3.6

MongoFrames alternatives and similar packages

Based on the "ORM" category.
Alternatively, view MongoFrames alternatives based on common mentions on social networks and blogs.

Do you think we are missing an alternative of MongoFrames or a related project?

Add another 'ORM' Package



Build Status Join the chat at https://gitter.im/GetmeUK/ContentTools

MongoFrames is a fast unobtrusive MongoDB ODM for Python designed to fit into a workflow not dictate one. Documentation is available at MongoFrames.com and includes:


We recommend you use virtualenv or virtualenvwrapper to create a virtual environment for your install. There are several options for installing MongoFrames:

  • pip install MongoFrames (recommended)
  • easy_install MongoFrames
  • Download the source and run python setup.py install


10 second example

from mongoframes import *

# Define some document frames (a.k.a models)
class Dragon(Frame):
    _fields = {'name', 'loot'}

class Item(Frame):
    _fields = {'desc', 'value'}

# Create a dragon and loot to boot
Item(desc='Sock', value=1).insert()
Item(desc='Diamond', value=100).insert()
Dragon(name='Burt', loot=Item.many()).insert()

# Have Burt boast about his loot
burt = Dragon.one(Q.name == 'Burt', projection={'loot': {'$ref': Item}})
for item in burt.loot:
    print('I have a {0.name} worth {0.value} crown'.format(item))


To test the library you'll need to be running a local instance of MongoDB on the standard port.

To run the test suite: py.test To run the test suite on each supported version of Python: tox

Helpful organizations

MongoFrames is developed using a number of tools & services provided for free by nice folks at organizations committed to supporting open-source projects including GitHub and Travis CI.