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

快速学会做网站网站开发技术的发展流程

快速学会做网站,网站开发技术的发展流程,开发app外包公司,营销是什么一、DefaultRouter是Django REST framework中提供的一个路由器类#xff0c;用于自动生成URL路由。路由器是将URL与视图函数或视图集关联起来的一种机制。Django REST framework的路由器通过简单的配置可以自动生成标准的URL路由#xff0c;从而减少了手动编写URL路由的工作量…一、DefaultRouter是Django REST framework中提供的一个路由器类用于自动生成URL路由。路由器是将URL与视图函数或视图集关联起来的一种机制。Django REST framework的路由器通过简单的配置可以自动生成标准的URL路由从而减少了手动编写URL路由的工作量。 1. 使用方法 导入DefaultRouter类,实例化一个router,然后使用router.register()方法注册视图集: from rest_framework import routersrouter routers.DefaultRouter()router.register(rusers, UserViewSet) 这样就可以自动为UserViewSet生成URLConf了。 2. 工作原理 DefaultRouter内部实现了一个register方法,它会去分析传入的视图集,获取它的一些属性如queryset、serializer_class等。 根据这些信息,DefaultRouter会为这个视图集生成5种默认的URL模式: - list - 获取视图集queryset的列表数据 - detail - 获取queryset单个对象的数据 - create - 创建新的对象 - update - 更新对象 - partial_update - 更新对象的部分字段这简化了视图集与URL之间的绑定,开发者只需要编写视图集类,而URLConf可以自动生成。 3. 自定义扩展 DefaultRouter也支持自定义路由方式,可以通过重写路由器的get_urls方法来实现。所以DefaultRouter为DRF的视图集提供了便捷的自动URL绑定方式,减少了重复劳动,是DRF框架的一个很好的设计。 4.在本次案例中的应用可与以上进行对比 urls.py from django.contrib import admin from django.urls import path from apps.erp_test.views import *from rest_framework import routersrouter routers.DefaultRouter() router.register(GoodsCategory, GoodsCategoryViewSet)urlpatterns [path(admin/, admin.site.urls),path(filtergoodscategory/, FilterGoodsCategory),path(insertgoodscategory/, InsertGoodsCategory),path(filtergoodscategoryapi/, FilterGoodsCategoryAPI.as_view()),path(getgoods/, GetGoods.as_view()), ]urlpatterns router.urls 使用routers.DefaultRouter()​创建了一个默认的路由器对象并使用router.register()​方法注册了一个视图集GoodsCategoryViewSet​。这样可以自动为这个视图集生成对应的URL路由并将其添加到urlpatterns​中。 1. 创建DefaultRouter实例 router routers.DefaultRouter() 这里实例化了默认的路由器。 2. 注册视图集 router.register(GoodsCategory, GoodsCategoryViewSet) 使用register方法注册了GoodsCategory视图集。 3. 包含自动生成的URL urlpatterns router.urls 自动将路由器生成的URL模式包含到urlpatterns中。这样,DefaultRouter会根据GoodsCategoryViewSet的信息,自动生成一组CRUD URL模式: - /GoodsCategory/ - 名为GoodsCategory的endpoint - GET /GoodsCategory/ - 查询所有分类 - POST /GoodsCategory/ - 新增分类 - GET /GoodsCategory/{pk}/ - 根据主键获取单个分类 - PUT /GoodsCategory/{pk}/ - 更新整个分类 - PATCH /GoodsCategory/{pk}/ - 更新部分分类 - DELETE /GoodsCategory/{pk}/ - 删除分类 开发者只需要编写视图集逻辑,URL定义都由DefaultRouter自动完成了。这种设计很好地体现了DRF框架的优势,可以快速高效地开发API。 二、自定义函数 action 是 Django REST framework 中的一个装饰器用于将自定义函数转换为视图集的一个动作。action 装饰器提供了一种定义自定义函数的方式这些函数并不直接对应于标准的 CRUD 操作Create-Read-Update-Delete而是实现一些其他的自定义行为或业务逻辑。 使用这个装饰器的典型步骤是: 1. 从 rest_framework.decorators 中导入 action 装饰器 2. 定义一个自定义函数,实现特定的业务逻辑 3. 使用 action 装饰这个自定义函数 4. 在视图集类中包含这个加了装饰器的自定义函数 5. 这样这个自定义函数就成为了该视图集的一个动作操作 6. 可以向标准的 CRUD 接口一样来调用这个自定义的操作接口action 装饰器为 Django REST framework 提供了开箱即用的方式去扩展视图集,实现除了 CRUD 之外的其他自定义行为,非常方便和灵活。 class GoodsCategoryViewSet(ModelViewSet):# 指定查询集用到的数据queryset GoodsCategory.objects.all()# 指定查询集用到的序列化容器serializer_class GoodsCategorySerializeraction(detailFalse, methods[get])def latest(self, request):latest_obj GoodsCategory.objects.latest(id)print(latest_obj)return Response(helllo 你调用了自定义的函数) 这段代码定义了一个GoodsCategoryViewSet视图集,并使用action装饰器添加了一个自定义的latest操作。 1. 首先定义了queryset和serializer_class,指定了该视图集要操作的模型和序列化类。 2. 然后使用action装饰器定义了latest方法,并指定它响应GET请求。 3. latest方法中,查询了id最大(最新的)的一个GoodsCategory对象。 4. 打印了该对象,并返回一个响应。 5. 这样就定义好了latest自定义操作。 6. 可以通过类似/goods_categories/latest/的URL来调用这个操作。 7. action装饰器实现了在不修改视图集类的情况下,添加自定义行为的方式。 8. 使代码更清晰,也方便重用。 所以action是DRF提供的非常有用的装饰器,可以提高视图集扩展性和灵活性。
http://www.pierceye.com/news/542911/

相关文章:

  • 网站漂浮窗口代码麻涌东莞网站建设
  • icp许可证对网站的要求怎么不用wordpress
  • 四平市城市建设档案馆网站山东省建设业协会网站
  • js网站访问计数ui网上接单网站
  • 西安优秀高端网站建设服务商国外网站阻止国内访问怎么做
  • 招生型网站建设不用js做网站
  • 网站正能量视频不懂我意思吧wordpress readme
  • 石家庄网站seo优化站长工具ip地址
  • 网站运行速度慢一个网站做三页是什么意思
  • wordpress视频网站企炬网站
  • 做数据收集网站租一个服务器多少钱
  • 苏州网站制作推广网站改版 删除栏目
  • 电子商务网站开发需求文档怎样建自己的网站
  • 通过关键词优化提升企业网站个人 可以做网站备案吗
  • 山西百度公司做网站的网站监控的软件怎么做
  • 如何做一份企业网站网站调用微博
  • 电子商务网站的设计工具wordpress中文用户名
  • 网站免费下载软件软件著作权申请多少钱一个
  • 东莞网站视频网站建设和管理规则
  • 内网网站建设方案wordpress 开发主题
  • 咸阳网站建设联系电话星悦做任务网站是
  • 家居网站建设的背景及意义免费域名注册官网
  • 桂林网站制作多少钱排名优化seo
  • 将网站保存怎么做wordpress 后台菜单
  • 2.0网站线上建设什么意思做外贸网站哪家的好
  • 网站域名可以更改吗安装wordpress插件目录下
  • 海南省澄迈住房和城乡建设厅网站ui设计师创意平台
  • 青岛网站设计公司排名wordpress 下载主题
  • 外包做网站不满意中级经济师考试成绩查询
  • 苏州企业网站建站系统网页制作基础步骤