美文网首页
28_rest-framework 路由控制

28_rest-framework 路由控制

作者: knot98 | 来源:发表于2018-12-17 15:29 被阅读0次

rest-framework路由控制

一、基本路由:

最常用的路由写法
url(r'^books/$', views.BookView.as_view())
url(r'^books/(?P<pk>\d+)$', views.BookDetailView.as_view()),

二、半自动路由

from rest_framework.viewsets import ViewSetMixin
ViewSetMixin这个类重写了as_view方法,不过没有继承View,所有使用的时候需要与继承了View的类或者View类一起使用:

在路由层:

url(r'^test1/$', views.TestAll.as_view({'get': 'test'})),
url(r'^test2/$', views.TestAll.as_view({'get': 'test2'})),
url(r'^test3/$', views.TestAll.as_view({'get': 'test3'})),
在一个视图类中,可以写很多个路由
class TestAll(ViewSetMixin,APIView):
    def test(self,request):
        return HttpResponse('test')

    def test2(self, request):
        return HttpResponse('test2')

    def test3(self, request):
        return HttpResponse('test3')

三、全自动路由

路由配置:
from django.conf.urls import url,include
from app01 import views
from rest_framework import routers
router=routers.DefaultRouter()
# 两个参数,一个是匹配的路由,一个是视图中写的CBV的类
router.register('publish',views.PublishView)
urlpatterns = [    
    # 可以用 以下方式访问
    # 1 http://127.0.0.1:8000/publish/
    # 2 http://127.0.0.1:8000/publish.json
    # 3 http://127.0.0.1:8000/publish/3
    # 4 http://127.0.0.1:8000/publish/3.json   
    url(r'',include(router.urls))
]
视图类:
from rest_framework.viewsets import ModelViewSet
class PublishView(ModelViewSet):
    queryset=models.Publish.objects.all()
    serializer_class=PublishSerializers
会自动生成路由,同样不推荐使用

相关文章

  • 28_rest-framework 路由控制

    rest-framework路由控制 一、基本路由: 最常用的路由写法 二、半自动路由 ViewSetMixin这...

  • Laravel路由、控制器、模型、视图

    一、路由相关 -> 基础路由设置 -> 路由参数 -> 路由分组 二、控制器 -> 目录结构及创建控制器 cmd进...

  • 路由控制

    路由控制表的形成方式有两种,一种是管理员手动设置,一种是路由器和其他路由器相互交换信息时自动刷新。 ip地址和路由...

  • iOS捷径:AirRoute

    AirRoute 通过手机查看和控制路由,需要在路由上打开SSH远程控制权限。注:不是所有路由器都支持远程控制,支...

  • 网络编程(五)IP协议-下

    一、路由控制 路由控制表(Routing Table):保存真正的数据发送目标地址,指明路由器或主机。实现IP通信...

  • Flutter之路由

    目录 组件 - BottomAppBar 手势控制 - GestureDetector 路由概述 构建路由 命名路...

  • 路由协议

    路由控制的定义 IP地址与路由控制 互联网是由路由器连接的网络组合而成的,为了能让数据包正确达到目标主机,路由器必...

  • Service Mesh - Istio流量控制篇(上)

    动态路由:用Virtual Service和Destination Rule设置路由规则 路由这个功能是流量控制里...

  • Angular实现SPA

    指定容器 配置路由词典 路由跳转 前进与后退 路由传参 路由嵌套 路由守卫(控制一个路由中的组件是否能够访问鉴权、...

  • Laravel本就好玩

    隐式控制器 路由声明: 控制器写法 缓存 路由缓存 在你的项目部署完成后执行 生成路由缓存,缓存一旦生成,app/...

网友评论

      本文标题:28_rest-framework 路由控制

      本文链接:https://www.haomeiwen.com/subject/ogcckqtx.html