路由Routers

使用方法:   在urls.py中定义路由

from rest_framework.routers import DefaultRouter
# 定义视图集的路由
router = DefaultRouter()
router.register(r'books',new_views.BookInfoViewSet,base_name='book')
# 将试图集的路由添加到urlpattens
urlpatterns += router.urls

其中:

register(prefix, viewset, base_name)
prefix 该视图集的路由前缀
viewset 视图集
base_name 路由名称的前缀

视图集中附加action的声明

from rest_framework.decorators import action
# 追加action:返回书记的倒叙地0个书籍的信息
@action(methods=['get'],detail=False)
def latest(self, request):
"""
# 追加action 修改图书的阅读数量
@action(methods=['put'],detail=True)
def read(self, request, pk):
...

其中:

@action()
action装饰器可以接收两个参数:
methods: 声明该action对应的请求方式,列表传递
detail: 声明该action的路径是否与单一资源对应,及是否是xxx/<pk>/action方法名/
True 表示路径格式是xxx/<pk>/action方法名/
False 表示路径格式是xxx/action方法名/

最新文章

  1. iOS 如何打开后灯(闪光灯)
  2. JavaScript HTML CSS外部链接
  3. LotusPhp入口文件解析
  4. python encode decode unicode区别及用法
  5. IOS时间格式转换
  6. Tamperdata工具使用(登陆时就修改用户名),篡改post数据
  7. NET Core,你必须了解无处不在的“依赖注入”
  8. 使用redis构建文章投票系统
  9. css 修改placeholder的颜色
  10. zabbix添加IIS网站计数器(并发连接数)详解
  11. MySQL中关于数据类型指定宽度之后的情况
  12. Practical Web Penettation Testing (the first one Mutillidae 大黄蜂 之二)
  13. Qt创建任务栏进度条
  14. Python爬虫之PyQuery使用(六)
  15. Eclipse中修改包名,提交SVN时报 is out of date,怎么办?
  16. php之code tips
  17. cuda中用cublas库做矩阵乘法
  18. MT【200】一道自招的不等式
  19. C#编程(四十五)----------格式字符串
  20. Vue CLI 3 配置兼容IE10

热门文章

  1. MyBatis实例教程--以接口的方式编程
  2. 【iOS开发】iOS对UIViewController生命周期和属性方法的解析
  3. iOS-UIImageView播放动画
  4. web相关基础知识4
  5. windows下Memcached 架设及java应用(转)
  6. [剑指Offer] 42.和为S的两个数字
  7. [剑指Offer] 23.二叉搜索树的后序遍历
  8. [LeetCode] 70. Climbing Stairs(斐波那契数列)
  9. BZOJ4472 JSOI2015salesman(树形dp)
  10. Struts2 利用拦截器 interceptor 控制登陆和访问权限