首页 > 其他 > 详细

Django一页通-续

时间:2020-10-04 21:51:54      阅读:68      评论:0      收藏:0      [点我收藏+]

视图函数View

FBV - function based view

CBV - class based view

views.py

class MyView(View):
    # 默认支持options方法,作用是查询当前框架支持哪些请求方法。
    # 最多支持这些方法:get、post、put、patch、delete、head、options、trace
    # 其他7种方法需要手写

    info=None # urls.py路由中的参数要提前在类中定义

    # 支持get就支持head
    def get(self,request):
        return HttpResponse(fget方法,{self.info})

    def post(self,request):
        # 需要注释掉settings中的csrf中间件代码
        return HttpResponse(post方法)

    def put(self,request):
        return HttpResponse(put方法)

    def patch(self,request):
        return HttpResponse(patch方法)

    def delete(self,request):
        return HttpResponse(delete方法)

    def head(self,request):
        # head方法只传头信息,这些消息体收不到。
        return HttpResponse(head方法,自定义,不用get的方法)

    # def options(self,request):
    #     return HttpResponse(‘自定义options方法‘)

    # postman里无trace方法
    def trace(self,request):
        return HttpResponse(trace方法)

    # Django中不支持copy方法
    def copy(self,request):
        return HttpResponse(postman里有的copy方法)

urls.py

    # 相同路由,写在前面的有效,后面的不起作用。
    path(myview/,views.MyView.as_view()), # 类中定义的参数路由中也可以不传,但不能传未定义的参数。
    path(myview/,views.MyView.as_view(info=今天是个好天气)), # 传参必须提前在类为定义

 

Django一页通-续

原文:https://www.cnblogs.com/xiongjiawei/p/13768344.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!