Skip to main content

PyRoutesJS provide a Javascript routes generation function like Python Routes Mapper.generate method

Project description

PyRoutes.JS provide a Javascript routes generation function like Python Routes Mapper.generate method.

Introduction

  • Do you use Python Routes library in Pylons or other applications ?

  • Do you use something like ${h.url('entry_view', entry_id=2)} in your templates ?

So, now do you dream to have Javascript routes generation function ?

PyRoutes.JS is the tool that you need !

If you have this Routes Mapper configuration :

...
map = Mapper()
...
map.connect('entry_view', '/entries/{issue_id:\d*}/', controller='issues', action='view')
map.connect('entry_edit', '/entries/{issue_id:\d*}/edit', controller='issues', action='edit')
...

In your javascript files, you can use PyRoutes.JS like this :

pyroutes.generate('entry_view', entry_id=2); // return '/entries/1/'
pyroutes.generate('entry_edit', entry_id=5); // return '/entries/5/edit/'

Installation

$ pip install pyroutes.js

Pylons integration

In my_app/config/middleware.py file, append :

...
from pylons.middleware import ErrorHandler, StatusCodeRedirect
from pylons.wsgiapp import PylonsApp
from routes.middleware import RoutesMiddleware

...

from pyroutesjs import Middleware as PyRoutesJSMiddleware       # <= append this line

...

from my_app.config.environment import load_environment

...

def make_app(global_conf, full_stack=True, static_files=True, **app_conf):

    ...

    # Append PyRoutes.js middleware
    app = PyRoutesJSMiddleware(app, config['routes.map'])      # <= append this line

    app.config = config
    return app

In your template, append :

<script type="text/javascript" src="${h.url('/js/pyroutes.js')}"></script>

Limitations

  • Currently you can only generate named routes

Source code

Mercurial repository is here : https://bitbucket.org/harobed/pyroutes.js/src

You can clone the code :

$ hg clone http://bitbucket.org/harobed/pyroutes.js

Issue tracker

You can report your bugs here : https://bitbucket.org/harobed/pyroutes.js/issues

News

0.1.0 (not released)

  • Initial version

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

pyroutes.js-0.1.0.tar.gz (4.8 kB view details)

Uploaded Source

File details

Details for the file pyroutes.js-0.1.0.tar.gz.

File metadata

File hashes

Hashes for pyroutes.js-0.1.0.tar.gz
Algorithm Hash digest
SHA256 4e150036a194e10120d5580346dfbea0aac7340c4743fa34113eb9debbd80f1a
MD5 9fbb8c8ad66f223fee1b1e2c20c2ad6a
BLAKE2b-256 01a3e9612cd1aab143fccd6d00db4163162e9c136a6128a1a2b1574a9a317b1c

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