Metadata-Version: 1.0
Name: pyroutes.js
Version: 0.1.0dev1
Summary: PyRoutesJS provide a Javascript routes generation function like Python Routes Mapper.generate method
Home-page: https://bitbucket.org/harobed/pyroutes.js
Author: Stephane Klein
Author-email: stephane@harobed.org
License: BSD
Description: ==========
        PyRoutesJS
        ==========
        
        ``PyRoutesJS`` provide a Javascript routes generation function like `Mapper.generate <http://routes.groovie.org/modules/mapper.html#routes.mapper.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 ?
        
        PyRoutesJS 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 ``PyRoutesJS`` 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
        
        
        News
        ====
        
        0.1.0 (not released)
        --------------------
        
        * Initial version
        
Platform: UNKNOWN
