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

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第三方库


热门话题
java在JTable上以逗号显示值   Maven NoSuchMethodError:void com。谷歌。常见的基础先决条件。checkArgument(布尔、java.lang.String、java.lang.Object)   SonarQube是用于验证代码的Java版本   java无法获取gps位置   java NetBeans 7.0中的绑定组问题   java Android向文件内部存储添加多行   java中的Xml解析问题   java侦听器问题和符号错误   方法模式上的java正则表达式。编译()   Raspberry Pi应用程序的java信息网页   java为计算器拆分输入字符串   如何使此文件i/O Java程序在Unix中运行?   java Hibernate:奇怪的ID设置   JavaMaven/Netbeans:子模块中的开源文件   来自父活动的java更新私有ListFragment   带有构造函数的Java对象数组   java以编程方式向LinearLayout添加多个组件   java如何以编程方式设置安卓系统时间?