Skip to main content

WSGI-compliant HTTP publisher.

Project description

Overview

Otto is an HTTP publisher which uses a routes-like syntax to map URLs to code. It supports object traversal.

You can use the publisher to write web applications. It was designed with both small and large applications in mind. We have tried to incorporate elements of existing publishers to allow diverse and flexible application patterns while still being in concordance with the Zen Of Python.

Here’s a variation of a familiar theme:

import otto
import webob
import wsgiref.simple_server

app = otto.Application()

@app.connect("/*path/:name")
def hello_world(request, path=None, name=u'world'):
    return webob.Response(u"An %d-deep hello %s!" % (len(path), name))

wsgiref.simple_server.make_server('', 8080, app).serve_forever()

This release is compatible with Python 2.4+.

See the documentation for this release.

Changes

1.2 (2009-11-16)

Features

  • Route matches that come before object mapping are passed on to the mapper on instantiation; these matches are then not passed to the controller.

Backwards incompatibilities

  • The object mapper takes the place of the traverser; on instantiation it gets the part of the match dictionary that comes before the asterisk.

  • The empty asterisk is now mapped to the empty string. This does not change the high-level interface.

1.1 (2009-11-12)

Features

  • The leading slash is now optional in a route path definition.

  • The Route class now provides the match method.

Backwards incompatibilities

  • The Publisher.route method was renamed to connect. This method now takes a route object. This change was also applied for the Router class.

1.0 (2009-11-12)

  • Initial public release.

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

Otto-1.2.tar.gz (69.6 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