Initial commit

* Examples work
* setup.py kinda updasted
* Fork of txmongo but with new pymongo embedded
This commit is contained in:
Don Brown
2014-01-24 16:19:17 -07:00
commit ae154dbc72
60 changed files with 14825 additions and 0 deletions

31
examples/dbref.py Normal file
View File

@@ -0,0 +1,31 @@
#!/usr/bin/env python
# coding: utf-8
import asyncio
import asyncio_mongo
from asyncio_mongo._bson import DBRef
@asyncio.coroutine
def example():
mongo = yield from asyncio_mongo.Connection.create('localhost', 27017)
foo = mongo.foo # `foo` database
test = foo.test # `test` collection
doc_a = {"username":"foo", "password":"bar"}
result = yield from test.insert(doc_a, safe=True)
doc_b = {"settings":"foobar", "owner":DBRef("test", result)}
yield from test.insert(doc_b, safe=True)
doc = yield from test.find_one({"settings":"foobar"})
print("doc is:", doc)
if isinstance(doc["owner"], DBRef):
ref = doc["owner"]
owner = yield from foo[ref.collection].find_one(ref.id)
print("owner:", owner)
if __name__ == '__main__':
asyncio.get_event_loop().run_until_complete(example())