跳转到主要内容

PyRoutesJS提供类似于Python Routes Mapper.generate方法的JavaScript路由生成功能

项目描述

PyRoutes.JS提供类似于Python Routes Mapper.generate方法的JavaScript路由生成功能。

简介

  • 你在Pylons或其他应用中使用过Python Routes库吗?

  • 你在模板中使用过类似${h.url('entry_view', entry_id=2)}的东西吗?

所以,你现在梦想拥有一个JavaScript路由生成功能吗?

PyRoutes.JS就是你需要这个工具!

如果你有这个Routes Mapper配置

...
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')
...

在你的javascript文件中,你可以这样使用PyRoutes.JS

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

安装

$ pip install pyroutes.js

Pylons集成

my_app/config/middleware.py文件中,添加

...
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

在你的模板中,添加

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

限制

  • 目前你只能生成命名路由

源代码

Mercurial仓库在这里:https://bitbucket.org/harobed/pyroutes.js/src

你可以克隆代码

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

问题跟踪

你可以在这里报告你的错误:https://bitbucket.org/harobed/pyroutes.js/issues

新闻

0.1.0(未发布)

  • 初始版本

项目详情


下载文件

下载适合您平台的文件。如果您不确定要选择哪个,请了解更多关于安装包的信息。

源分发

pyroutes.js-0.1.0.tar.gz (4.8 kB 查看哈希值)

上传时间 源代码

支持