A fast unobtrusive MongoDB ODM for Python
Project description
MongoFrames
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:
Installation
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
Dependencies
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))
Testing
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.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
File details
Details for the file MongoFrames-1.3.7.tar.gz
.
File metadata
- Download URL: MongoFrames-1.3.7.tar.gz
- Upload date:
- Size: 31.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.10.12
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | a498c27ad2792f23deb51a5440a5fece13118400b4061419ad2f5dee102decc2 |
|
MD5 | 8c8ea1a8d9a677d60a38d41af290cdc2 |
|
BLAKE2b-256 | 8e303b35ddce201117795062e6eb1944159e78d9c5c717a8720b8a1cb0b72446 |