首页 > 代码库 > django里上传图片的操作
django里上传图片的操作
在django里图片上传里,分为两种一种是在django的后台上传图片,以数据库的方式上传,另一种是在html页面以表单的方式上传
首先要先安装下这个包 pip install Pillow==3.4.1
setting里需要设置 上传的路径
MEDIA_ROOT=os.path.join(BASE_DIR,‘static/media‘)
在model里要配置数据库
class PicTest(models.Model):
pic=models.ImageField(upload_to=‘booktest‘)
数据库里要有这个字段
在html 要写input type=’file’ 这个字段
在view里要写逻辑
还有涉及到要操作setting里的文件 需要导入设置的包
from django.conf import settings
import os
上传的图片都是保存在 /static/media/booktest/
接受提交的数据写到文件里
然后对提交的数据路径保存到 数据库里
f1=request.FILES.get(‘pic1‘) path=os.path.join(settings.MEDIA_ROOT,‘booktest‘,f1.name) with open(path,‘w‘) as pic: for p in f1.chunks(): pic.write(p) #保存数据记录到数据库里 pic1=PicTest() pic1.pic=‘booktest/%s‘%f1.name pic1.save() return HttpResponse(‘ok‘)
在显示图片的时候 view.py get得到数据库里的路径地址
这里要注意 要是使用的all的方式获取的话 在html里就需要使用循环的方式来显示图片
然后在html <img url= "/static/media/{{p.pic}}
第一种以django后台的方式提交! 这种用的不多,在这里也简单说一下
django里上传图片的操作
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。