routes mapper resource

7 篇文章 1 订阅
3 篇文章 0 订阅

使用Mapper还可以使用resource注册路由。这种方法,可以很简便的注册一组路由。
下面介绍一下具体用法。
mapper = Mapper()
mapper.resource(member_name, collection_name, **kwargs)

注册出来的路由会有统一的路径前缀path_prefix

计算path_prefix

情况1:path_prefix在kwargs那么path_prefx=kwargs[“path_prefix”]

情况2:path_prefix不在kwargs但是设置了parent_resource, path_prefix=parent_resource[‘collection_name’]+{parent_resource[‘member_name’]_id}
例如parent_resource=dict(collection_name="/p, member_name=“mem) path_prefix=”/p/{mem_id}"
情况3:path_prefix=""

controller 不传默认使用经过处理(去掉开头和结尾的/)的collection_name

member
一个字典,每一个key是一个<action>,对应的值为请求方式<method>
会被自动加上member[‘edit’] = ‘GET’

路由请求方式处理action
自动添加
/<path_prefix>/<collection_name>/{id}/editGETedit
/<path_prefix>/<collection_name>/{id}/edit.{format}GETedit
自动添加
/<path_prefix>/<collection_name>/{id}PUTupdate
/<path_prefix>/<collection_name>/{id}.{format}PUTupdate
/<path_prefix>/<collection_name>/{id}DELETEdelete
/<path_prefix>/<collection_name>/{id}.{format}DELETEdelete
/<path_prefix>/<collection_name>/{id}GETshow
/<path_prefix>/<collection_name>/{id}.{format}GETshow
通过member 字典添加
<path_prefix>/<collection_name>/{id}/<action><method><action>
<path_prefix>/<collection_name>/{id}/<action>.format<method><action>

collection
一个字典,每一个key是一个<action>,对应的值为请求方式<method>

路由请求方式处理action
自动添加
/<path_prefix>/<collection_name>POSTcreate
/<path_prefix>/<collection_name>.{format}POSTcreate
/<path_prefix>/<collection_name>GETindex
/<path_prefix>/<collection_name>.{format}GETindex
根据collection的值添加
/<path_prefix>/<collection_name>/<action><method><action>
/<path_prefix>/<collection_name>/<action>.{format}<method><action>

new
一个字典 每一个key是一个<action>,对应的值为请求方式<method>
new.update({‘new’: ‘GET’})

路由请求方式处理action
自动添加
/<path_prefix>/<collection_name>/newPOSTnew
/<path_prefix>/<collection_name>.{format}/newPOSTnew
根据new的值添加
/<path_prefix>/<collection_name>/new/<action>/<method><action>
/<path_prefix>/<collection_name>/new/<action>.{format}/<method><action>
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值