随笔分类 - Django
摘要:login_required是对Auth认证模块的补充,Auth模块: https://www.cnblogs.com/weiyiming007/p/12419317.html1、login_required介绍判断用户是否登录, 如果用户没有登录, 默认会跳转到'/accounts/login/', 并且URL会自动加上你请求的url作为登录后的跳转地址, 如:'/accounts/login...
阅读全文
摘要:1、什么是celeryCelery是一个简单、灵活且可靠的,处理大量消息的分布式系统专注于实时处理的异步任务队列同时也支持任务调度celery架构:Celery的架构由三部分组成,消息中间件(message broker),任务执行单元(worker)和任务执行结果存储(task result store)组成。消息中间件Celery本身不提供消息服务,但是可以方便的和第三方提供的消息中间件集成。...
阅读全文
摘要:1、celery执行定时任务1)几点几分执行:celery_task-s1.pyfrom celery import Celeryimport time# redis不加密码broker='redis://127.0.0.1:6379/0'backend='redis://127.0.0.1:6379/1'app=Celery('test',backend=backend,broker=broke...
阅读全文
摘要:REST framework可以自动帮助我们生成接口文档。接口文档以网页的方式呈现。自动接口文档能生成的是继承自APIView及其子类的视图。1、安装依赖REST framewrok生成接口文档需要coreapi库的支持。pip3 install -i https://pypi.douban.com/simple/ coreapi2、设置接口文档访问路径在总路由中添加接口文档路径。文档路由对应的视...
阅读全文
摘要:1、haystack简介Haystack是django的开源全文搜索框架(全文检索不同于特定字段的模糊查询,使用全文检索的效率更高 ),该框架支持Solr,Elasticsearch,Whoosh, Xapian,搜索引擎它是一个可插拔的后端(很像Django的数据库层),所以几乎你所有写的代码都可以在不同搜索引擎之间便捷切换;- 全文检索不同于特定字段的模糊查询,使用全文检索的效率更高,并且能够...
阅读全文
摘要:1、所有框架都能用的方式-先新建一个py文件,生成一个redis连接池;-需要在哪里用,就把这个py文件导过去;举例:在app下新建一个py文件,redis_pool.py:单独新建的原因是,使用时导过去就行了,如果直接和程序写在一起,那么每次执行程序,都会新建一个连接池,所以……views.pyfrom django.shortcuts import render, HttpResponsefr...
阅读全文
摘要:1、同源策略同源策略(Same origin policy)是一种约定,它是浏览器最核心也最基本的安全功能,如果缺少了同源策略,则浏览器的正常功能可能都会受到影响。可以说Web是构建在同源策略基础之上的,浏览器只是针对同源策略的一种实现;请求的url地址,必须与浏览器上的url地址处于同域上,也就是域名,端口,协议相同;比如:我在本地上的域名是127.0.0.1:8000,请求另外一个域名:127...
阅读全文
摘要:1、缓存介绍在动态网站中,用户所有的请求,服务器都会去数据库中进行相应的增,删,查,改,渲染模板,执行业务逻辑,最后生成用户看到的页面.当一个网站的用户访问量很大的时候,每一次的的后台操作,都会消耗很多的服务端资源,所以必须使用缓存来减轻后端服务器的压力.缓存是将一些常用的数据保存内存或者memcache中,在一定的时间内有人来访问这些数据时,则不再去执行数据库及渲染等操作,而是直接从内存或mem...
阅读全文
摘要:1、添加测试数据views.pyfrom django.shortcuts import renderfrom app01 import modelsfrom rest_framework.views import APIViewfrom rest_framework.response import Responsefrom rest_framework.versioning import U...
阅读全文
摘要:1、作用用于版本的控制2、内置的版本控制类from rest_framework.versioning import QueryParameterVersioning,AcceptHeaderVersioning,NamespaceVersioning,URLPathVersioning#基于url的get传参方式:QueryParameterVersioning------>如:/users?v...
阅读全文
摘要:1、响应器作用根据用户请求的URL 或 用户可接受的类型,筛选出合适的 渲染组件;比如我们用浏览器访问时就会有一个简单样式的页面,用postman访问就只是json格式的数据;2、内置的响应器显示json格式:JSONRenderer访问URL:http://127.0.0.1:8000/test/?format=jsonhttp://127.0.0.1:8000/test.jsonhttp://...
阅读全文
摘要:1、解析器的作用根据请求头 content-type 选择对应的解析器对请求体内容进行处理;有application/json,x-www-form-urlencoded,form-data等格式;举例说明:1)发送application/json数据,让后端接收:views.pyfrom django.shortcuts import renderfrom rest_framework.view...
阅读全文
摘要:路由1、路由第一种写法-原始方式这种方式也就是前面一直在写的;urls.pyfrom django.conf.urls import urlfrom app01 import viewsurlpatterns = [ url(r'^books/$', views.BookView.as_view()), url(r'^books/(?P\d+)$', views.BookDetailV...
阅读全文
摘要:1、频率简介为了控制用户对某个url请求的频率,比如,一分钟以内,只能访问三次;2、内置频率类使用局部使用views.pyfrom django.shortcuts import renderfrom rest_framework.views import APIViewfrom rest_framework.response import Responsefrom rest_framework....
阅读全文
摘要:1、DRF中的Request在Django REST Framework中内置的Request类扩展了Django中的Request类,实现了很多方便的功能--如请求数据解析和认证等。比如,区别于Django中的request从request.GET中获取URL参数,从request.POST中取某些情况下的POST数据。在APIView中封装的request,就实现了请求数据的解析: ...
阅读全文
摘要:1、权限简介 比如只用超级用户才能访问指定的数据,普通用户不能访问,所以就要有权限组件对其限制; 2、权限组件的使用 权限使用也分为局部使用、全局使用、局部禁用,使用方式和认证组件类似; 权限组件局部使用: models.py from django.db import models # Creat
阅读全文
摘要:1、认证简介只有认证通过的用户才能访问指定的url地址,比如:查询课程信息,需要登录之后才能查看,没有登录,就不能查看,这时候需要用到认证组件;2、登录接口和token的使用settings.pyINSTALLED_APPS = [ ..... 'rest_framework',]models.pyfrom django.db import models# Create your mo...
阅读全文
摘要:1、关于序列化与反序列化web有两种应用模式,一种是前后端不分离,一种是前后端分离,当前后端分离的时候,后端只需要向前端传输数据即可,不需要进行其他的操作;现阶段主流的数据格式为json格式,所以在restframework在前后端传输数据时,也主要是json数据,过程中就要需要把其他数据转换成json数据,比如数据库查询所有数据时,是queryset对象,那就要把这对象处理成json数据返回前端...
阅读全文
摘要:一、安装djangorestframework方式一:pip3 install djangorestframework方式二:pycharm图形化界面安装方式三:pycharm命令行下安装(装在当前工程所用的解释器下)djangorestframework: 它是一个app,可以应用到项目中; 快速的构建resful规范的接口; 以后再执行的dispatch方法是APIView的...
阅读全文
摘要:一、关于RESTfulREST与技术无关,代表的是一种软件架构风格,REST是Representational State Transfer的简称,中文翻译为“表征状态转移”;REST从资源的角度类审视整个网络,它将分布在网络中某个节点的资源通过URL进行标识,客户端应用通过URL来获取资源的表征,获得这些表征致使这些应用转变状态;所有的数据,不过是通过网络获取的还是操作(增删改查)的数据,都是资...
阅读全文