- 2024-10-31flask之cbv写法
一、CBV介绍1、class-basedviews,CBVs通常使用函数视图(function-basedviews,FBVs)来定义路由和处理逻辑。不过,Flask也支持基于类的视图(class-basedviews,CBVs),这可以帮助在需要共享逻辑或管理复杂视图结构时组织代码。基于类的视图 CBV 的特点组织性:CBV方式可以更好
- 2024-10-09我的第一个博客
我的第一个博客CBV添加装饰器的三种方式#CBV添加装饰器fromdjango.viewsimportView#需要先导入method_decoratorfromdjango.utils.decoratorsimportmethod_decorator#CBV中django不建议直接给类的方法加装饰器#@method_decorator(login_auth,name='get')#方
- 2024-06-24flask cbv加装饰器
cbv加装饰器fromflaskimportFlaskfromflask.viewsimportMethodViewapp=Flask(__name__)app.debug=True###登录认证--->不能公用--》要么只能给fbv用,要么只能给cbv用defauth(func):definner(*args,**kwargs):print(args)#cbv,会有第一个参
- 2024-06-22Django框架之视图层,form表单文件上传下载,FBV与CBV引入,CBV源码剖析
ⅠDjango框架之视图层【一】Django的三板斧fromdjango.shortcutsimportHttpResponse,render,redirect,reverse【1】HttpResponse能返回字符串形式的数据HttpResponse是Django中用于创建HTTP响应对象的类,它允许你构建并返回服务器对客户端请求的数据和状态当需
- 2024-05-21【DRF_02】基于Django CBV实现
路由系统fromdjango.urlsimportpathfromapp01.viewsimportcbv_demourlpatterns=[#path('admin/',admin.site.urls),path('cbv/demo/',cbv_demo.StudentsView.as_view()),]CBV视图fromdjango.viewsimportViewfromdjango.sh
- 2024-05-04Django - 探究CBV视图
目录数据显示视图基础视图TemplateView数据显示视图基础视图TemplateView视图类TemplateView是所有视图类里最基础的应用视图类,开发者可以直接调用应用视图类,它继承多个父类classTemplateView(TemplateResponseMixin,ContextMixin,View):"""Renderatemplate
- 2024-04-11第五章 探究 CBV 视图
第五章探究CBV视图5.1数据显示视图 数据显示视图是将后台的数据展示在网页上,数据主要来自模型,一共定义了4个视图类,分别说明如下:RedirectView:用于实现HTTP重定向,默认情况下只定义GET请求的处理方法。TemplateView:视图类的基础视图,可将数据传递给HTML模版,默认情况
- 2024-04-07【22.0】Django框架之CBV添加装饰器的三种方式
【一】引言给类视图函数添加装饰器需要借助第三方模块fromdjango.utils.decoratorsimportmethod_decorator【二】三种添加装饰器方式【1】给类方法加装饰器指名道姓的装--放在方法上面(1)路由path('login_view/',views.MyLogin.as_view()),(2)视图fromdjango.vi
- 2024-03-29CBV添加装饰器
CBV添加装饰器fromdjango.utils.decoratorsimportmethod_decorator(1)添加在函数上classCbvTest(View):@method_decorator(login_auth)defget(self):returnHttpResponse('get请求')defpost(self):returnHttpResponse('post请求
- 2024-03-25Django cookie与session,CBV如何添加装饰器
cookie与session简介会话跟踪技术什么是会话跟踪?我们需要先了解一下什么是会话!可以把会话理解为客户端与服务器之间的一次会晤,在一次会晤中可能会包含多次请求和响应。例如你给10086打个电话,你就是客户端,而10086服务人员就是服务器了。从双方接通电话那一刻起,会话就开始了,到某
- 2024-02-29Flask的CBV用法
FBV写法fromflaskimportFlask,jsonifyapp=Flask(__name__)
[email protected]('/')defindex():return'hello'CBV写法#导入模块fromflask.viewsimportMethodView#固定写法fromflaskimportFlaskapp=Flask(__name__)ap
- 2024-02-11十八、Django之Http
1、Django请求的生命周期请求响应Http1、发送Http请求请求头(包含Cookie)\r\n\r\n请求体2、服务器请求,根据请求头中的url在路由关系表中进行匹配(从上到下)3、匹配成功后,执行指定的views函数a.Url->函数==>FBVb.Url->类==>CBV4、响应内
- 2023-11-29CBV源码分析
1.路由配置path('index/',视图类名.as_view())#as_view是类的绑定方法2.执行流程(分析)path('index/',index),--->请求来了,路由匹配成功会执行index(request,)path('index/',UserView.as_view()),--->同样的,请求来了,路由匹配成功则会执行UserView.as_view()(r
- 2023-11-23cbv本质 前后端交互编码方式
#1请来了,路由匹配成功执行path('index/',views.Index.as_view()), 执行views.Index.as_view()()#2本质是执行as_view()内部有个闭包函数view()#3本质是view()---》dispatch()#4dispatch内部,根据请求的方法(get,post)---->执行视图类中的defgetdefpost
- 2023-11-16cbv源码,模板,请求响应,session
1cbv源码
- 2023-11-15Flask之登录认证装饰器、配置文件、路由系统、CBV
登录认证装饰器fromflaskimportFlask,request,render_template,redirect,session,jsonify,url_forapp=Flask(__name__)#如果要用session,必须加这一句app.secret_key='asdfasdfasdf-lqz-justin'USERS={1:{'name':'李清照','age
- 2023-10-22CBV添加装饰器的三种方式
fromdjango.viewsimportViewfromdjango.utils.decoratorsimportmethod_decorator"""CBV中django不建议你直接给类的方法加装饰器无论该装饰器能都正常给你都不建议直接加"""#@method_decorator(login_auth,name='get')#方式2(可以添加多个针对不同的方法加不同
- 2023-08-31CBV、APIView源码分析
一、CBV源码分析1、功能需求基于类的视图--->使用类编写--->在类中写跟请求方式(methon)同名的方法--->路由配置类名.as_view()前端的请求过来,什么请求,就会执行跟请求方式同名的方法2、执行流程路由匹配成功--->配置在路由上的第二个参:执行函数内存地址自动加(request
- 2023-08-26【4.0】Flask框架之CBV
【一】基本使用fromflaskimportFlask,render_template#template_folder默认就是当前文件夹下的templates可以不写app=Flask(__name__,template_folder='templates')#FBV:基于函数的视图@app.route('/index',methods=['GET'])defindex():return
- 2023-08-16flask的cbv
eg:#cbv:基于类的视图MethodView继承自ViewfromflaskimportFlask,render_templatefromflask.viewsimportMethodViewapp=Flask(__name__,template_folder='templates')#3写个装饰器defauth(func):definner(*args,**kwargs):print('装饰器执
- 2023-08-01CBV源码
三板斧问题#在视图函数中写函数和普通函数不太一样#Django中使用的局部是requestdefindex(request): passHttpResponse:返回的字符串render:返回的HTML页面,并且再返回给浏览器之前还可以给HTML文件传值redirect:重定向"""所有的视图函数不能没有返回值,而且返回的对象必
- 2023-07-17【14.0】Django框架之CBV添加装饰器的三种方式
【一】给类方法加装饰器指名道姓的装--放在方法上面路由path('login_view/',views.MyLogin.as_view()),需要导入一个模块fromdjango.utils.decoratorsimportmethod_decorator视图fromdjango.viewsimportViewfromdjango.utils.decoratorsimportmetho
- 2023-06-23django之视图层
三板斧HttpResponse返回字符串类型render返回html页面并且在返回给浏览器之前还可以给html文件传值redirect重定向"""#视图函数必须要返回一个HttpResponse对象正确研究三者的源码即可得处结论Theviewapp01.views.indexdidn'treturnanHttpRes
- 2023-05-06Cookie与Session CBV中加装饰器
目录一.会话跟踪技术什么是会话跟踪?我们需要先了解一下什么是会话。可以把会话理解为客户端和服务端之间的一次会晤,在一次会晤中可能会包含多次请求和响应。例如你给10086打个电话,你就是客户端,而10086就是服务端。从双方接通电话那一刻起,会话就开始了,到某一方挂断电话表示会话
- 2023-05-06django视图层与cbv源码分析
目录一、视图层之必会三板斧二、JsonResponse对象两种序列化数据的方式方式一:使用json模块方式二:使用JsonResponse对象使用JsonResponse对象序列化除字典外的数据类型如果给JsonResponse对象内部的json代码传参三、视图层之request对象获取文件四、视图层之FBV与CBV概念介绍五、CB