当前位置: 首页 > news >正文

塔城地区网站建设_网站建设公司_AJAX_seo优化

网页版传奇网站,网站建设之织梦后台熊掌号主页,吉林seo管理平台,dw asp access 网站开发优点一. 概念 FBV#xff08;function base views#xff09; 顾名思义基于函数的视图类 CBV#xff08;class base views#xff09;基于类的视图类 至于区别呢? 我觉得只是写法上的不一样, 实现的结果都是一样的, 我比较喜欢用CBV模式, 因为在Django中内部帮我做了请求方式…一. 概念 FBVfunction base views 顾名思义基于函数的视图类 CBVclass base views基于类的视图类 至于区别呢? 我觉得只是写法上的不一样, 实现的结果都是一样的, 我比较喜欢用CBV模式, 因为在Django中内部帮我做了请求方式的判断, 无需用户实现方法判断逻辑, 来看看代码的区别吧 二. 实现代码1.FBV  fbv就是在url中一个路径对应一个函数. 在工程下的url中写如下代码 from api import viewsurlpatterns [path(admin/, admin.site.urls),path(, include(api.urls)),url(r^test/, views.test_fbv) ] 然后在api的views中写如下测试函数: def test_fbv(request):if(request.method POST):return HttpResponse(post)if (request.method PUT):return HttpResponse(put)if (request.method GET):return HttpResponse(get) 然后运行整个整个工程, 命令行输入python manage.py runserver 因为我的是linux系统, 就选用restclient这个插件进行api的测试 点完send后再看看 返回什么数据, 在response中可以 看到get 可以看到和我们想象的结果一样, 那我们在试试其他的请求方式, 比如put, post等 和我们代码写的一样, 这里我就不截图了 基于方法的视图 REST framework 也允许使用基于函数的视图。它提供了一套简单的装饰器来包装你的函数视图以确保它们接收 Request而不是 Django HttpRequest实例并允许它们返回 Response而不是 Django HttpResponse并允许你配置该请求的处理方式。 api_view() 用法api_view(http_method_names[GET]) api_view 是一个装饰器用 http_method_names 来设置视图允许响应的 HTTP 方法列表举个例子编写一个简单的视图手动返回一些数据。 from rest_framework.decorators import api_viewapi_view() def hello_world(request):return Response({message: Hello, world!})默认情况下只有 GET 方法会被接受。其他方法将以 405 Method Not Allowed 进行响应。要使用其他方法请指定视图允许的方法如下所示 api_view([GET, POST]) def hello_world(request):if request.method POST:return Response({message: Got some data!, data: request.data})return Response({message: Hello, world!})API 策略装饰器 (policy decorators) 为了覆盖默认设置REST framework 提供了一系列可以添加到视图中的附加装饰器。这些必须在 api_view 装饰器之后下方。 例如要创建一个使用 throttle 来确保它每天只能由特定用户调用一次的视图请使用 throttle_classes 装饰器传递一个 throttle 类列表 from rest_framework.decorators import api_view, throttle_classes from rest_framework.throttling import UserRateThrottleclass OncePerDayUserThrottle(UserRateThrottle):rate 1/dayapi_view([GET]) throttle_classes([OncePerDayUserThrottle]) def view(request):return Response({message: Hello for today! See you tomorrow!})这些装饰器对应于 APIView上设置的策略属性。 可用的装饰器有 renderer_classes(...) parser_classes(...) authentication_classes(...) throttle_classes(...) permission_classes(...) 每个装饰器都有一个参数它必须是一个类列表或者一个类元组。 2. CBV CBV就是在url中一个路径对应一个类 在上述工程下的urls下添加如下代码 urlpatterns [path(admin/, admin.site.urls),path(, include(api.urls)),url(r^test_FBV/, views.test_FBV),url(r^test_CBV/, views.test_CBV.as_view()) ] 注意当用cbv模式写url时类后面一定要用as_view()方法, 这是规定格式 然后在api下的views文件中写如以下逻辑代码 from django.views import Viewclass test_CBV(View):# 以get形式访问会执行get函数,一般情况下获取数据def get(self, *args, **kwargs):return HttpResponse(get)# 以post形式访问的话会执行post函数一般情况下发送数据def post(self, *args, **kwargs):return HttpResponse(post) 这里做几点说明: 1.cbv模式下的视图类一定要继承Views类 2. 然后重定向get, post, put请求方法等, 实现不同的请求方法实现不同的逻辑代码, api验证这部分我就不说了, 直接用restclient测试就可以了
http://www.ihoyoo.com/news/88026.html

相关文章:

  • h5网站建设建站1040视频app
  • 有关网站开发的国外书籍小说素材网站
  • 行业门户型网站网站ftp空间
  • 物流企业网站源码北京网站建设推荐安徽秒搜科技
  • 网站建设需要ui吗wordpress 页面管理
  • 湖北省交通建设监理协会网站可以免费发布招聘网站
  • 泉州品牌网站设计定制wordpress插件安装教程视频
  • 网站建设5000费用2022网站seo
  • 电子建设网站的目的wordpress官方模板下载
  • 企业网站建设基本要素机械配件采购平台
  • android开发和网站开发电子商务网络安全
  • 河源网站建设多少钱30天网站建设实录视频
  • 电子商务网站cmswordpress添加音乐
  • html5做网站总结二进制可以做网站是吗
  • 个人网站建设yxhuying短视频运营是做什么的
  • 网站开发哪种框架关键词智能优化排名
  • 漳州 网站设计wordpress慢 数据库
  • 我要注册公司怎么办太原百度快照优化排名
  • 网站建设7大概要多久安徽招标网官网
  • 网站上传图片教程wordpress负载均衡
  • 昆明网站开发哪家好郑州妇科
  • 台州网站开发storefront wordpress
  • 莱州网站建设价格如何做微信个人网站
  • 怎么切图做网站风云榜小说排行榜
  • 水墨 网站模板如何做一个自己的网页
  • 网站基础风格创建杨凌做网站
  • 网站下面版权代码外贸公司域名哪个网站申请比较好
  • 网站建设综合实训心得体会WordPress移除顶部恢复
  • 广东网站建设排名网站功能描述
  • joomla可以做预订类网站吗网站运维推广怎么做