Skip to main content

Delicate Tornado Route Decorator.

Project description


import tornado.ioloop
import tornado.web

from toroute import route

class MainHandler(tornado.web.RequestHandler):
def get(self):
self.write("Hello, world")

@route('/login', name='login')
class LoginHandler(tornado.web.RequestHandler):
def get(self, *args, **kwargs):

# group by `/blog`, e.g.: blog app
@route('/list', name='blog_list', kwargs={'data': 'hello'}, group='/blog')
class BlogListHandler(tornado.web.RequestHandler):
def initialize(self, **kwargs): = kwargs.get('data', None)

def get(self, *args, **kwargs):

@route('/post', name='blog_post', group='/blog')
class BlogPostHandler(tornado.web.RequestHandler):
def get(self, *args, **kwargs):
print('post complete! redirect:%s' % route.url_for('blog_list'))

@route(r'/view/(?P<pid>\d+)/detail', name='blog_view', group='/blog')
class BlogViewHandler(tornado.web.RequestHandler):
def get(self, pid, **kwargs):
msg = 'Handle Class for /blog/list is %s' \
% route.get_handler_class('/list', group='/blog').__name__

if __name__ == '__main__':

application = tornado.web.Application([
(r"/", MainHandler),
] + route.routes())


Project details

Download files

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

Source Distribution

torroute-0.0.1.tar.gz (1.4 kB view hashes)

Uploaded Source

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