skip to navigation
skip to content

MongoDescriptors 0.1.0

Some really basic descriptor-based utils for interacting with Mongo.

Latest Version: 0.2.2

Mongo Descriptors

Some really basic descriptor-based utils for interacting with Mongo. Specifically, It's made for model classes, that represent documents or types of documents.

import bson
from mongo_descriptors import MongoI, Db

class Doc(object):
db=Db("test") # Sorry for the confusion, but when I say Db, I
# really mean Collection. The actuall db can be
# referenced like this.
db=Db("test", root="local")
# Root defaults to local.

some_prop=MongoI("some_prop") # Note that if you try to get this before assigning
# to it, you'll get an error. (Unless of course the
# document already exists in the database)

an_int_prop=MongoI("an_int_prop", typ=int) # Applies int() before returning and submitting.

another_prop=MongoI("another_prop", default=0) # If the property isn't in the database, it returns
# value provided by default. This doesn't affect
# the value stored in the database in any way.

oi=bson.ObjectId() # The instance is required to have a attribute oi
# which stores the _id of the document reffered to.

raw=MongoI() # This gets and stores a raw dict that represents
# the object. You can't overwrite the _id like this.

# I mentioned earlier that it returned a dict.
# This isn't strictly true. It actually returns a
# CatDict, which supports concatination.
# This leads itself to examples like the following.

x.raw+={"foo":"bar"} # Note that foo does not actually get added as a
# property to the object. Just to the database.
File Type Py Version Uploaded on Size
MongoDescriptors-0.1.0.tar.gz (md5) Source 2012-10-22 3KB