Skip to main content

async mongodb gridfs with tornado IOLoop

Project description

asyncgridfs
===========

async mongo gridfs for tornado


Installation
------------

Installing: `pip install asyncgridfs` or ` easy_install asyncgridfs`


Usage
-----

import asyncmongo
import tornado.web
from asyncgridfs import GridFS

class Handler(tornado.web.RequestHandler):
@property
def db(self):
if not hasattr(self, '_db'):
self._db = asyncmongo.Client(pool_id='mydb', host='127.0.0.1', port=27017, maxcached=10, maxconnections=50, dbname='test')
return self._db

@tornado.web.asynchronous
def get(self):
fid = self.get_argument('fid')
fs = GridFS(self.db)
fs.get(ObjectId(fid),callback=self._on_get)


@tornado.web.asynchronous
def post(self):
f = self.request.files['imgFile'][0]
content = f.pop('body')
content_type = f.pop('content_type')
filename = f.pop('filename')

fs = GridFS(self.db)
fs.put(content, contentType=content_type, filename=filename, callback=self._on_post)


def _on_get(self, fileobj):
self.set_header('Content-Type', fileobj['contentType'])
self.write(fileobj['data'])
self.finish()

def _on_put(self, _id):
self.write(str(_id))
self.finish()

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

asyncgridfs-0.2.1.dev-py2.7.egg (6.7 kB view details)

Uploaded Source

File details

Details for the file asyncgridfs-0.2.1.dev-py2.7.egg.

File metadata

File hashes

Hashes for asyncgridfs-0.2.1.dev-py2.7.egg
Algorithm Hash digest
SHA256 7ff959540a4f89126989664267f01fb6e26c0d7b8314702d19391231e3b63f96
MD5 9dd87c0ed89623a7b160c803171f6a76
BLAKE2b-256 219b385f584d73073eeab6f37fd0d32687a116eda4893efd31715fa027f4a502

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page