Pyramid Rest 扩展
项目描述
Pyramid REST
概述
Pyramid扩展的初稿,用于构建RESTful Web应用程序。
包括的功能
资源定义,配置路由/视图,例如
资源“application”
路由 [GET/POST] /applications
路由 [GET/DELETE/PUT] /applications/{application_id}
路由 GET /applications/{application_id}/new
路由 GET /applications/{application_id}/edit
资源“application.user”
路由 [GET/POST] /applications/{application_id}/users
路由 [GET/DELETE/PUT] /applications/{application_id}/users/{user_id}
路由 GET /applications/{application_id}/users/new
路由 GET /applications/{application_id}/users/edit
单一资源“application.user.score”
路由 [GET/PUT] /applications/{application_id}/users/{user_id}/score
路由 GET /applications/{application_id}/users/{user_id}/score/edit
资源被添加到配置内省器,并与其路由、视图、子资源和父资源相关联;
最终用户定义REST方法(index、create、show、update、delete、new、edit);
默认情况下
对于任何未提供的方法,将返回HTTP 405错误;
权限“index、create、show、update、delete、new、edit”与相应的方法相关联;
配置资源的三种方式
命令式使用 config.add_resource,它将视图模块中的类关联到资源
config.add_resource('application') # .views.applications:ApplicationsView config.add_resource('application.user') # .views.application_users:ApplicationUsersView
声明式使用 Resource 类(cornice风格)
app_users = Resource('application.user') @app_users.index() def index(context, request, application_id): pass @app_users.show() def show(context, request, application_id, id): pass
声明式使用 resource_config 装饰器
@resource_config('application.user') class AppUsers(object): def __init__(self, context, request): pass def index(self, application_id): return {} @method_config(renderer='example.mako') def edit(self, application_id, id): return {}
接下来是什么?
HTTP PATCH方法: http://tools.ietf.org/html/rfc5789
资源生成命令;
链接;
验证;
分页;
自动定义SQLAlchemy实体资源;
在add_resource中添加视图参数以覆盖视图定义;
代码/反馈
变更日志
开发
0.2.8
与更新后的zope.interfaces兼容性
使用pyramid_mongokit的最新功能
不再在setup.py中分发
0.2.5
将mongo连接移动到pyramid_mongokit。
0.2.4
切换到github。
添加对mongo数据库的支持
ini文件中的设置 pyramid_rest.mongo 默认视为true
MongoConnection 已注册到注册表
为 request 添加了两个属性: mongo_connection 和 mongo_db
Mongo 连接从 os.environ['MONGO_URI'] 获取 uri
数据库名称来自 os.environ['MONGO_DB_NAME']
任何具有 model_class 类属性,且其值为 mongokit.Document 定义的资源视图都可以继承 pyramid_rest.mongo.DocumentView 以继承所有默认操作。
添加自定义渲染器,根据接受头自动适应输出格式,支持的格式有 application/json 和 application/bson
0.1.0
将 ResourceUtility 重命名为 ResourceConfigurator 以使其角色更清晰。
强制为路由模式变量和视图调用参数使用人类友好的名称,例如 /applications/{application_id}/users/{id} 和 show(context, request, application_id, id)
移除配置资源名称中分隔符的能力:它始终是 ‘.’
通过 add_singular_resource 指令或 Resource 或 resource_config 上的 singular=True 关键字参数添加单数资源
将示例从测试目录移动到根目录:用于测试和文档。
0.0.1
仅集合资源
通过 add_resource 指令进行命令模式
通过 Resource 类进行声明模式
通过 resource_config 装饰器的声明模式视图
项目详情
pyramid_rest-0.2.8.tar.gz 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | d9f990bdec7cb2fb54a66d129e72d53b6848aa63bfe0743042eef28213cdd7df |
|
MD5 | 8ebe2c1d28088c77191088effd7f26c4 |
|
BLAKE2b-256 | c4a7d825037bf1b4eb267756076574246f9a522c4bea56451b72c8e535facf1e |