今天我们学习一下Django上传图片的知识
1、 准备工作
a) 配置:在settings.py文件中加入一下配置,用来存放我们上传的图片
MEDIA_URL = ‘/media/’
MEDIA_ROOT = os.path.join(BASE_DIR,’media’)
b) 上传控件:我选择了bootstrap-fileinput
在页面加载相应的css,js,这里面用到了bootstrap相关的字体文件也要一并加入到项目中对应的目录中。这里用到了模板页相关知识。相关css.js文件如下
我的静态文件目录如下:
c) 由于我这个上传要对图片进行一些操作,所以要安装一些图片处理的第三方模块我用的是Pillow
2、 开始我们的工作
a) ManageSite app下的urls.py加入url
b) ManageSite app下的views.py加入相应的方法
c) ManageSite app下models.py加入新的model并且更新上一篇文档讲到的user
d) 在media文件夹下添加三个子目录分别存放原图、缩略图、虚化图(文件夹目录如下)
e) 模板页面编写
Input标签
Js渲染并添加提交方法
f) 具体保存图片的方法
g) 同时保存到数据库
3、 页面展示
初始页面:
选择图片:
上传成功: