>
> routes_in = (
>              (r'^/?$', r'/app_name/default/index'),
>              (r'^/(?P<url>[^/]*)/?$', r'/app_name/default/index/\g<url>'), 
>           
>              )
>
>
> in your root-level routes.py The drawback is that you will lose access to 
> all other apps (including admin) but that can be a good thing for public 
> deployments.
>

You can catch the other apps by adding route patterns that match them 
before your catch-all pattern (the patterns are processed in order, and the 
first match is used). Anyway, using the parametric router and specifying 
the url-shortening app as the default app might be simpler:

routers = dict(
    BASE = dict(
        default_application = 'shortener',
        default_controller = 'default',
        default_function = 'index',
    ),
)

Then http://myapp.com/tcgata will get routed to 
http://myapp.com/shortener/default/index/tcgata, and "tcgata" will be 
available to the index() function in request.args(0).

Anthony

Reply via email to