Skip to main content

Delicate Tornado Route Decorator.

Project description

Usage:

```python
import tornado.ioloop
import tornado.web

from toroute import route

@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):
self.write('login')

# 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):
self.data = kwargs.get('data', None)

def get(self, *args, **kwargs):
self.write(self.data)

@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'))
self.redirect(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__
self.write(msg)

if __name__ == '__main__':

application = tornado.web.Application([
(r"/", MainHandler),
] + route.routes())
application.listen(8000)
tornado.ioloop.IOLoop.current().start()

```

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 details)

Uploaded Source

File details

Details for the file torroute-0.0.1.tar.gz.

File metadata

  • Download URL: torroute-0.0.1.tar.gz
  • Upload date:
  • Size: 1.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for torroute-0.0.1.tar.gz
Algorithm Hash digest
SHA256 43b74b6a271981fccdc444557cdf1ef4a0f455cd9f5e63add50415b9c5d7f0f1
MD5 30a5bb8250b77614d944c66c6234c558
BLAKE2b-256 a9b2b5f6b653ff074d961579e7277f4dc2b75e4fd7953c4042ab69d2249eab8d

See more details on using hashes here.

Supported by

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