大橙子网站建设,新征程启航
为企业提供网站建设、域名注册、服务器等服务
小编这次要给大家分享的是详解Django中form表单与请求的生命周期操作,文章内容丰富,感兴趣的小伙伴可以来了解一下,希望大家阅读完这篇文章之后能够有所收获。
坚守“ 做人真诚 · 做事靠谱 · 口碑至上 · 高效敬业 ”的价值观,专业网站建设服务10余年为成都三维植被网小微创业公司专业提供成都定制网站营销网站建设商城网站建设手机网站建设小程序网站建设网站改版,从内容策划、视觉设计、底层架构、网页布局、功能开发迭代于一体的高端网站建设服务。Django
中请求的生命周期
HTTP请求及服务端响应中传输的所有数据都是字符串
步骤
url
时,浏览器会生成请求头和请求体发给服务器url
经过wsgi
和中间件,到达路由映射表,在路由中一条一条进行匹配Django
Django
把客户端想要的数据做为一个字符串返回给客户端FBV
一个url
对应一个视图函数
在url
匹配成功之后,会直接执行对应的视图函数。
CBV
一个url
对应一个类
url
匹配成功找到视图函数中对应的类,然后这个类回到请求头中找到对应的Request.Method
如果客户端以post的方式提交请求,就执行类中的post方法如果客户端以get的方式提交请求,就执行类中的get方法
步骤:
url
和method的请求,这两个信息都是字符串类型Django
会通过dispatch反射的方式找到类中对应的方法并执行form表单
定义:
Django
的表单系统中,所有的表单都继承自django.forms.Form
类
Django
的表单系统
form_obj.as_p #在html网页渲染所有的字段 label #为一个标签添加id号 form_obj.字段 #渲染指定的字段 min_length #绑定字段的最短长度 max_length #绑定字段的最长长度 is_valid() #验证用户输入的信息是否有效,返回一个布尔值 cleaned_data() #清洗数据 error_massage() #定义错误的返回信息 #文件上传: request.POST.get("file") #获取上传的文件的文件名 request.FILES #获取上传文件的对象 结果是一个字段 file_obj.name #获取上传文件在内存中的名字 #上传文件时要使用分片传输的方式 #上传 enctype="multipart/form-data" #form表单的属性里添加 #接收 if request.method=="POST": file_obj = request.FILES.get("up_file") fl = open(file_obj.name,'vb') for i in file_obj.chunks(): fl.write(i) fl.close()