CBV流程】的更多相关文章

django CBV 源码分析 FBV和CBV FBV(function base views) 就是在视图里使用函数处理请求. 在之前django的学习中,我们一直使用的是这种方式,所以不再赘述. CBV(class base views) 就是在视图里使用类处理请求. Python是一个面向对象的编程语言,如果只用函数来开发,有很多面向对象的优点就错失了(继承.封装.多态).所以Django在后来加入了Class-Based-View.可以让我们用类写View.这样做的优点主要下面两种: 提…
一.CBV流程解析 urls.py urlpatterns = [ url(r'^admin/', admin.site.urls), url(r'^book/', views.BookView.as_view()), ] views.py from django.views import View class BookView(View): def get(self,request): return HttpResponse("get.........") def post(self…
flask中CBV使用 from flask import Flask, views app = Flask(__name__) class Login(views.MethodView): methods = ['POST', 'GET'] # 如果需要在CBV中加装饰器的话,括号里就是装饰器的内存地址,可以传多个 decorators = () def get(self): print('get 请求') return 'login get' def post(self): print('p…
一.基本流程 rest_framework框架是基于CBV基础开发的(VPIView(View)),所以基本流程与CBV流程相似 当我们的请求发来后,会走as_views,执行view里面的方法,最开始都要执行dispatch方法 urls.pyurl(r'^books/$', views.BookViews.as_view()) views.pyclass BookViews(APIView): def get(self,request,*args,**kwargs): passdef pos…
一. 自定义分页 1.准备工作 (1).首先在models.py中创建一张book表用来存储数据 from django.db import models class Book(models.Model): title=models.CharField(max_length=32) price=models.CharField(max_length=32) def __str__(self): return self.title (2)在index.html中创建大量数据 for j in ra…
一.Django请求生命周期: 前端发出请求到后端,通过Django处理.响应返回给前端相关结果的过程 先进入实现了wsgi协议的web服务器--->进入django中间件--->路由f分发--->视图(CBV或FBV)---->取模板,取数据,用数据渲染模板--->返回模板的字符串---->前端页面得到数据展现页面给用户 二.WEB开发模式: 在开发Web应用中,有两种应用模式: 前后端不分离前后端分离1 前后端不分离在前后端不分离的应用模式中,前端页面看到的效果都是…
1 -- 增 models.表名(类).objects.create(字段1=值,字段2=值) 查 models.表名(类).objects.get(pk = 3) models.表名(类).objects.filter(pk = 3) models.表名(类).objects.all() 删 models.表名(类).objects.get(pk = 3).delete() models.表名(类).objects.filter(pk = 3).delete() 改 obj= models.表…
一 .复习 1. CBV流程 class BookView(View): def get(): pass def post(): pass #url(r'^books/', views.BookView.as_view()), #url(r'^books/', View.as_view()), #url(r'^books/', View.view), 一旦用户访问books: View.view(request)==View.dispatch(request)==self.get(request…
1. 认证之APIView 在聊APIView之前, 我们先重温一下django2.x的CBV流程 a. 对于django而言, 当浏览器请求到达之后,按照规则首先会经过各大中间件(Middleware)(process_request, process_view, process_response), 而与CBV挂钩的便是各中间件的process_view方法,以CSRFViewMiddleware为例,django会默认开启全局CSRF验证,而在实际开发中,一部分视图处理类是不需要CSRF验…
模板 变量 {{ }} 标签 {% %} if elif else for empty forloop() with...as csrf_token 过滤器 default length add data Y-m-d H:i:s 也可以在settings配置全局 DATATIME_FORMAT = ‘Y-m-d H:i:s’ USE_10N=False filesizeformat slice safe 跨站脚本攻击 truncatechars 截断 组件 一小段代码段 include html…