昨日回顾: 分页器: 普通分页 # 普通分页 from rest_framework.pagination import PageNumberPagination -每页的大小(默认) -查询的时候,按哪个字段查 -当前页的每页大小(用户指定的) -每页显示最大条数 -写一个类继承分页类,重写属性 -使用的时候: -实例化出一个分页器对象 -返回值=对象.paginate_queryset(book_list, request, self) -序列化(返回值) -return序列化之后的值 偏移…
1 昨日回顾 版本控制 *** (1)url=127.0.0.1/course/?version=v100000 1 versioning_class=QueryParameterVersioning 'VERSION_PARAM':'version', 'DEFAULT_VERSION':'v2', 'ALLOWED_VERSIONS':['v1','v2'] 2 配置成全局:在setting里:QueryParameterVersioning (2)重要(以后建议用这种):127.0.0.1…
ContentType组件 解决什么问题:表的id和数据id,来唯一确定一条数据 用: 插入数据: models:content_obj = GenericForeignKey('table_id', 'course_id') 存:models.PricePolicy.objects.create(period=5, price=18000, content_obj=degree) 查询数据: 1 通过课程查价格策略: policy = GenericRelation('PricePolicy'…
drf版本控制 基于url的get传参方式 REST_FRAMEWORK={ # "DEFAULT_AUTHENTICATION_CLASSES":["app01.auth.AuthLogin",], # "DEFAULT_PERMISSION_CLASSES":['app01.auth.MyPer'], # "DEFAULT_THROTTLE_CLASSES":["app01.auth.VisitThrottle&…
一.项目背景二.项目架构三.项目实现3.1.数据生产3.1.1.数据结构3.1.2.编写代码3.1.3.打包测试3.2.数据采集/消费(存储)3.2.1.数据采集:采集实时产生的数据到 kafka 集群3.2.2.编写代码:数据消费(HBase)3.2.3.编写测试单元:范围查找数据(本方案已弃用,但需掌握)3.2.4.运行测试:HBase 消费数据3.2.5.编写代码:优化数据存储方案3.2.6.运行测试:协处理器3.2.7.编写测试单元:范围查找数据 一.项目背景   通信运营商每时每刻会产…
一.rest-framework之版本控制 1.作用 用于版本的控制 2.内置的版本控制 from rest_framework.versioning import QueryParameterVersioning,AcceptHeaderVersioning,NamespaceVersioning,URLPathVersioning #基于url的get传参方式:QueryParameterVersioning------>如:/versiontest/?version=v1 #基于url的正…
由于Django构建得是动态网站,每次客户端请求都要严重依赖数据库,当程序访问量大时,耗时必然会更加明显,最简单解决方式是使用:缓存,缓存将一个某个views的返回值保存至内存或者memcache中,5分钟内再有人来访问时,则不再去执行view中的操作,而是直接从内存memcached .Redis中之前缓存的内容拿到,并返回. 一.Django缓存的配置和应用 Django中提供了6种缓存方式: 开发调试  (开发调试使用) 内存(不做配置默认:默认配置是Django内置配置文件(用户不可见)…
Luffy项目 先看练习,如下: 一. 添加购物车和查看 1. url url(r'^shoppingcar/$', shoppingcar.ShoppingCarView.as_view({"post":"create","get":"list"})), 2. 视图 class ShoppingCarView(ViewSetMixin,APIView): def list(self,request,*args,**kwarg…
在WEB开发中用来应付高流量最有效的办法就是用缓存技术,能有效的提高服务器负载性能,用空间换取时间.缓存一般用来 存储频繁访问的数据 临时存储耗时的计算结果 内存缓存减少磁盘IO 使用缓存的2个主要原因: 降低延迟:缓存离客户端更近,因此,从缓存请求内容比从源服务器所用时间更少,呈现速度更快,网站就显得更灵敏. 降低网络传输:副本被重复使用,大大降低了用户的带宽使用,其实也是一种变相的省钱(如果流量要付费的话),同时保证了带宽请求在一个低水平上,更容易维护了. 在WEB开发中,缓存可以分为: 一…
Django 缓存.信号和extra Django 缓存 由于Django是动态网站,所以每次请求均会去数据库进行相应的操作,当程序访问量大时,耗时必然会显著增加.最简单的解决方法是:使用缓存,缓存将某个views的返回值保存在内存或者redis/memcache中,短时间内再次访问该网页时,不再去执行viwes中的操作,而是直接从内存或缓存数据库中获取内容,并返回. Django中提供了6种缓存方式: 开发调试 内存 文件 数据库 Memcache缓存(python-memcached模块)…