基于遍历的金字塔应用辅助库

TraversalKit的Python项目详细描述


该库提供了一些工具来为使用 穿越路线。它已经被开发用于Pyramidweb 但是,它不依赖于应用程序框架,可以使用 在任何应用程序中。

它有助于以简单的声明方式实现资源树层次结构:

>>> fromtraversalkitimportResource,DEC_ID>>> classRoot(Resource):... """ Tree root """>>> @Root.mount('users')... classUsers(Resource):... """ Users collection """>>> @Users.mount_set(DEC_ID,metaname='user_id')... classUser(Resource):... """ User resource """>>> @Root.mount('posts')... @User.mount('posts')... classPosts(Resource):... """ Posts collection """>>> @Posts.mount_set(DEC_ID,metaname='post_id')... classPost(Resource):... """ Post resource """>>> forrouteinRoot.routes():... print(route)<Route: />
<Route: /posts/>
<Route: /posts/{post_id}/>
<Route: /users/>
<Route: /users/{user_id}/>
<Route: /users/{user_id}/posts/>
<Route: /users/{user_id}/posts/{post_id}/>

这些资源符合Pyramid traversal接口和 Pyramid location awareness接口。

>>> root=Root()>>> user=root['users']['1']>>> user<User: /users/1/>
>>> user.__name__'1'
>>> user.__parent__<Users: /users/>
>>> user['posts']<Posts: /users/1/posts/>
>>> user['documents']# DOCTEST: +ellipsisTraceback (most recent call last):
...KeyError: ('documents', '/users/1/')

0.3.1

  • 修正了README.rstCHANGES.rst的输入错误。

0.3

  • 添加了对条件路由的支持。
  • 通过Resource.routes()添加了对资源树内省的支持。
  • 将资源uri添加到引发错误中以使其更具信息性。
  • 添加了对可分离资源缓存的支持。

0.2

  • 添加了方法Resource.get()

0.1

初次发布。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
MIME类型多部分/混合的java无对象DCH   Java Swing中单元格和列的间距   java为什么我不能使用For循环从集合中获取元素?   mysql Java餐厅计费系统   java MediaPlayer内存消耗   println Java添加的神秘输出:一些经过评估,一些经过打印   java我应该使用哪个对象?   PHP到Java论坛游戏集成   通过GeoNetwork上的java http post请求获取XML响应   java为什么类名与使用“==”的内部字符串比较冲突?   java反应。js如何定义自定义id,而不是在html中显示reactselect1value   java中的拼字数组   java如何使ScheduledExecutorService在其计划任务取消时自动终止   java查询未正确执行   IBatis+Java:检索HashMap   要读取的加密Java代码。txt文件并转换为二进制表示形式   Java Web Start应用程序自动加载   java Swing重写对象的paintComponent