Skip to main content
This is a pre-production deployment of Warehouse. Changes made here affect the production instance of PyPI (pypi.python.org).
Help us improve Python packaging - Donate today!

flask-restless adopted for tornado

Project Description
tornado-restless
================

Inspired on flask-restless this is a sqlalchemy restless api wrapper for tornado.

Flask-Restless provides a ReSTful JSON API for sqlalchemy.

Due to the fact that I'm a tornado fan I adapted Lincoln de Sousa's and Jeffrey Finkelstein's great library for using with tornado.

In many details this implementation follows the documentation of Flask-Restless:

https://flask-restless.readthedocs.org/en/latest/index.html

However there are some restrictions that are currently not implemented (like processors) or are slightly differ.

A autogenerated (using sphinx) version of the documentation for tornado-restless can be found at http://tornado-utils.github.io/tornado-restless/

Copyright license
=================

flask-restless was dual licensed under the GNU Affero General Public License and 3-clause BSD License.

tornado-restless is dual licences under the GNU Affero General Public License or the 3-clause BSD License.
For more information see the [LICENSE.AGPL.txt] or [LICENSE.BSD.txt].

Installing
==========

tornado-restless was developed under python3.3, sqlalchemy0.9 and tornado3.1

To install this library as an egg use:

python setup.py install

Quickstart
==========

import tornado.ioloop
import tornado.web

from tornado_restless import ApiManager
from sqlalchemy import create_engine, schema, Column
from sqlalchemy.types import Integer, String
from sqlalchemy.orm import sessionmaker
from sqlalchemy.ext.declarative import declarative_base

# Init Tornado Application
application = tornado.web.Application([])

# Init SQLAlchemy
engine = create_engine('sqlite:///:memory:')
metadata = schema.MetaData()
Session = sessionmaker(bind=engine)
Base = declarative_base(metadata=metadata)
session = Session()

# Create some model
class Person(Base):
__tablename__ = 'persons'

id = Column(Integer, primary_key=True)
name = Column(String, unique=True)

metadata.create_all(engine)

# Create restless api handlers
api = ApiManager(application=application, session_maker=Session)
api.create_api(Person)

if __name__ == "__main__":
application.listen(8888)
tornado.ioloop.IOLoop.instance().start()
Release History

Release History

This version
History Node

0.4.5

History Node

0.4.4

History Node

0.4.3

History Node

0.4.1

History Node

0.4.0

History Node

0.2.0

History Node

0.1.0

Download Files

Download Files

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

File Name & Checksum SHA256 Checksum Help Version File Type Upload Date
Tornado-Restless-0.4.5.tar.gz (28.0 kB) Copy SHA256 Checksum SHA256 Source Aug 13, 2015

Supported By

WebFaction WebFaction Technical Writing Elastic Elastic Search Pingdom Pingdom Monitoring Dyn Dyn DNS Sentry Sentry Error Logging CloudAMQP CloudAMQP RabbitMQ Heroku Heroku PaaS Kabu Creative Kabu Creative UX & Design Fastly Fastly CDN DigiCert DigiCert EV Certificate Rackspace Rackspace Cloud Servers DreamHost DreamHost Log Hosting