Django form 实现文件上传
很久没更新博客了,最近在写项目没时间,做到文件上传的适合,看了虫师的博客觉得不错,就顺便记录一下自己的操作过程:
models 配置:
classUser(models.Model):headImg=models.FileField(upload_to='./upload/')def__unicode__(self):returnself.headImg
#####建立一个headImg字段###数据上传到数据库做记录并且在当前项目目录下建立upload文件夹。
html 文件:
<?xmlversion="1.0"encoding="UTF-8"?><!DOCTYPEhtmlPUBLIC"-//W3C//DTDXHTML1.0Strict//EN""http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><htmlxmlns="http://www.w3.org/1999/xhtml"xml:lang="en"lang="en"><head><metahttp-equiv="Content-Type"content="text/html;charset=UTF-8"/><title></title></head><body><h2>register</h2><formmethod="post"enctype="multipart/form-data">`uf`.`as_p`<inputtype="submit"value="ok"/></form></body></html>
view 视图文件:
classUserForm(forms.Form):headImg=forms.FileField()defdisk(request):ifrequest.method=="POST":uf=UserForm(request.POST,request.FILES)ifuf.is_valid():headImg=uf.cleaned_data['headImg']user=User()user.headImg=headImguser.save()returnHttpResponse('uploadok!')else:uf=UserForm()returnrender_to_response('disk.html',{'uf':uf})
####form方式实现表单显示,并且上传文件。
上传成功:
mysql查看文件:
mysql>select*fromapp_user;+----+-------------------------------+|id|headImg|+----+-------------------------------+|1|upload/out_W3xCNAW.txt||2|upload/out_429apY0.txt||3|upload/out.txt||4|upload/out_FAvse7g.txt||5|upload/新建文本文档.txt||6|upload/out_0Cve1aD.txt|+----+-------------------------------+
声明:本站所有文章资源内容,如无特殊说明或标注,均为采集网络资源。如若本站内容侵犯了原著者的合法权益,可联系本站删除。