使用环境同上篇django文章。
成都创新互联坚持“要么做到,要么别承诺”的工作理念,服务领域包括:成都网站设计、成都网站建设、企业官网、英文网站、手机端网站、网站推广等服务,满足客户于互联网时代的通化县网站设计、移动媒体设计的需求,帮助企业找到有效的互联网解决方案。努力成为您成熟可靠的网络建设合作伙伴!在django中上传文件,添加上传页面:
安装pillow:
]# cd py3/django-test1/test5 ]# pip install pillow==3.4.1
如果此前安装过别的版本,也无所谓,执行此命令后会直接覆盖。
在settings.py文件中配置添加media目录:
]# vim test5/settings.py ... MEDIA_ROOT = os.path.join(BASE_DIR,'static/upload/')
创建上传目录:
]# mkdir static/upload
创建上传的view视图函数:
]# vim bookshop/views.py import os from django.shortcuts import render from django.http import HttpResponse from django.conf import settings def index(request): return render(request,'bookshop/index.html') def myExp(request): a1 = int('abc') return HttpResponse('hello_world') def uploadPhoto(request): return render(request,'bookshop/uploadphoto.html') def uploadHandle(request): pic1 = request.FILES['photo1'] picName = os.path.join(settings.MEDIA_ROOT,pic1.name) # return HttpResponse(picName) with open(picName,'wb') as f: for p in pic1.chunks(): f.write(p) return HttpResponse('<img src="/static/upload/%s" />' % pic1.name)
创建上传的html模板文件:
]# vim templates/bookshop/uploadphoto.html <!DOCTYPE html> <html> <head> <title>Title</title> </head> <body> <form action="/uploadHandle" method="post" enctype="multipart/form-data"> {% csrf_token %} <input type="file" name="photo1"> <br> <input type="submit" value="上传"> </form> </body> </html>
添加url:
]# vim bookshop/urls.py from django.conf.urls import url from . import views urlpatterns = [ url(r'^$',views.index), url(r'^myexp$',views.myExp), url(r'^uploadphoto$',views.uploadPhoto), url(r'^uploadHandle$',views.uploadHandle), ]
运行django服务器:
]# python manage.py runserver 192.168.255.70:8000
说明:要上传的图片为美女图
浏览器访问:http://192.168.255.70:8000/uploadphoto
选择上传的图片后,页面显示出该图片:
显示图片效果:
创新互联www.cdcxhl.cn,专业提供香港、美国云服务器,动态BGP最优骨干路由自动选择,持续稳定高效的网络助力业务部署。公司持有工信部办法的idc、isp许可证, 机房独有T级流量清洗系统配攻击溯源,准确进行流量调度,确保服务器高可用性。佳节活动现已开启,新人活动云服务器买多久送多久。
名称栏目:django之上传文件-创新互联
网页链接:https://www.cdcxhl.com/article42/cspphc.html
成都网站建设公司_创新互联,为您提供面包屑导航、移动网站建设、虚拟主机、网站导航、App开发、企业网站制作
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联