Skip to content

Instantly share code, notes, and snippets.

>>> import pymongo
>>> con = pymongo.Connection()
>>> nugget = con.elkorado.nuggets.find_one({"discoverer": "namlook"})
@namlook
namlook / gist:6713491
Created September 26, 2013 12:30
MongoKit simple inheritance example 3
from mongokit import ObjectId, Connection
connection = Connection()
@connection.register
class UserNugget(Core):
__collection__ = "user_nuggets"
structure = {
"url": unicode,
"topics": [unicode],
@namlook
namlook / gist:6713478
Created September 26, 2013 12:29
MongoKit simple inheritance example 2
@connection.register
class Nugget(Core):
__collection__ = "nuggets"
stucture = {
"url": unicode,
"topics": list,
"discoverer": unicode,
"popularity": int
}
default_values = {"popularity": 0}
@namlook
namlook / gist:6713455
Created September 26, 2013 12:27
MongoKit inheritance simple example
from datetime import datetime
class Core(mongokit.Document):
__database__ = "elkorado"
use_dot_notation = True
structure = {
"created_at": datetime,
"updated_at": datetime
}
default_values = {
"created_at": datetime.utcnow,
@namlook
namlook / gist:6713434
Created September 26, 2013 12:25
MongoKit simple example
import mongokit
connection = mongokit.Connection()
@connection.register
class Nugget(mongokit.Document):
__database__ = "elkorado"
__collection__ = "nuggets"
structure = {
"url": unicode,
"discoverer": unicode,
@namlook
namlook / myapp.py
Created May 25, 2011 12:36
flask, celery and global g
from flask import Flask
app = Flask(__name__)
from flaskext.celery import Celery
celery = Celery(app)
def process_global(glob_obj):
g.db = app.config['MONGO_DATABASE'] # get the unpickle-izable database
for k,v in glob_obj.iteritems():
@namlook
namlook / gist:636126
Created October 20, 2010 10:00
allow to access Document via the db
class MyDoc(Document):
collection_name = "mydoc"
structure = {
'foo': unicode,
'bar': int,
}
con = Connection()
con.register([MyDoc])
@namlook
namlook / gist:636121
Created October 20, 2010 09:56
Allow documents to self-reference
class Doc(Document):
structure = {
"connections": [ SELF ],
"some": unicode,
"other": unicode,
"important": int,
"data": uncode,
}
@namlook
namlook / gist:636106
Created October 20, 2010 09:43
A '_type' field that can be used to automatically case documents
from mongokit import *
import numpy as np
class MongoMatrix(Document):
structure = {}
use_autorefs = True
use_dot_notation=True
atomic_save = True