django使用admin站点上传图片的实例


Posted in Python onJuly 28, 2019

Django有提供文件系统支持,在Admin站点中可以轻松上传图片。使用Admin站点保存图片,需要安装Python的图片操作包

pip install Pillow

1 配置

默认情况下,Django会将上传的图片保存在本地服务器上,需要配置保存的路径。我们可以将上传的文件保存在静态文件目录中,如我们之前设置的static_files目录中在settings.py 文件中添加如下上传保存目录信息

MEDIA_ROOT=os.path.join(BASE_DIR,"static_files/media")

2 为模型类添加ImageField字段

我们为之前的BookInfo模型类添加一个ImageFiled

class BookInfo(models.Model):
 ...
 image = models.ImageField(upload_to='booktest', verbose_name='图片', null=True)

upload_to 选项指明该字段的图片保存在MEDIA_ROOT目录中的哪个子目录,进行数据库迁移操作

python manage.py makemigrations
python manage.py migrate

3 使用Admin站点上传图片

进入Admin站点的图书管理页面,选择一个图书,能发现多出来一个上传图片的字段admin站点图片字段,选择一张图片并保存后,图片会被保存在static_files/media/booktest/目录下。

在数据库中,我们能看到image字段被设置为图片的路径。

以上这篇django使用admin站点上传图片的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python写的创建文件夹自定义函数mkdir()
Aug 25 Python
跟老齐学Python之dict()的操作方法
Sep 24 Python
Python字典,函数,全局变量代码解析
Dec 18 Python
python学习——内置函数、数据结构、标准库的技巧(推荐)
Apr 18 Python
python3 实现的对象与json相互转换操作示例
Aug 17 Python
python3文件复制、延迟文件复制任务的实现方法
Sep 02 Python
Python远程开发环境部署与调试过程图解
Dec 09 Python
Python通过kerberos安全认证操作kafka方式
Jun 06 Python
Python如何将装饰器定义为类
Jul 30 Python
python实现邮件循环自动发件功能
Sep 11 Python
python和node.js生成当前时间戳的示例
Sep 29 Python
python如何将mat文件转为png
Jul 15 Python
Python中变量的输入输出实例代码详解
Jul 28 #Python
对django中foreignkey的简单使用详解
Jul 28 #Python
解决django 新增加用户信息出现错误的问题
Jul 28 #Python
Django使用Channels实现WebSocket的方法
Jul 28 #Python
Django实现web端tailf日志文件功能及实例详解
Jul 28 #Python
Python assert语句的简单使用示例
Jul 28 #Python
对Django中static(静态)文件详解以及{% static %}标签的使用方法
Jul 28 #Python
You might like
php csv操作类代码
2009/12/14 PHP
一个简单的PHP验证码实现代码
2014/05/10 PHP
PHP实现通过二维数组键值获取一维键名操作示例
2019/10/11 PHP
jQuery实现的立体文字渐变效果
2010/05/17 Javascript
jQuery在vs2008及js文件中的无智能提示的解决方法
2010/12/30 Javascript
jquery.uploadify插件在chrome浏览器频繁崩溃解决方法
2015/03/01 Javascript
js实现简易的单数字随机抽奖(0-9)
2020/03/19 Javascript
js实现跨域的几种方法汇总(图片ping、JSONP和CORS)
2015/10/25 Javascript
JQuery实现的按钮倒计时效果
2015/12/23 Javascript
WordPress中利用AJAX异步获取评论用户头像的方法
2016/01/08 Javascript
Angularjs material 实现搜索框功能
2016/03/08 Javascript
微信小程序 实战程序简易新闻的制作
2017/01/09 Javascript
使用ionic(选项卡栏tab) icon(图标) ionic上拉菜单(ActionSheet) 实现通讯录界面切换实例代码
2017/10/20 Javascript
详解vue项目的构建,打包,发布全过程
2017/11/23 Javascript
vuex中遇到的坑,vuex数据改变,组件中页面不渲染操作
2020/11/16 Javascript
[02:53]DOTA2英雄基础教程 山岭巨人小小
2013/12/09 DOTA
[44:50]2018DOTA2亚洲邀请赛 4.1 小组赛 A组 TNC vs VG
2018/04/02 DOTA
[05:31]干嘛呢兄弟!DOTA2 TI9语音轮盘部分出处
2019/05/14 DOTA
python使用在线API查询IP对应的地理位置信息实例
2014/06/01 Python
Python多线程编程(三):threading.Thread类的重要函数和方法
2015/04/05 Python
Python对list列表结构中的值进行去重的方法总结
2016/05/07 Python
使用Python写CUDA程序的方法
2017/03/27 Python
浅谈numpy生成数组的零值问题
2018/11/12 Python
Django实现跨域请求过程详解
2019/07/25 Python
Python 多线程共享变量的实现示例
2020/04/17 Python
详解如何在PyCharm控制台中输出彩色文字和背景
2020/08/17 Python
python 可视化库PyG2Plot的使用
2021/01/21 Python
澳大利亚婴儿、幼儿和儿童在线设计师商店:Smooch Baby
2019/02/16 全球购物
Harrods英国:世界领先的奢侈品百货商店
2020/09/23 全球购物
数控加工专业毕业生自荐信
2013/09/27 职场文书
注册资产评估专业求职信
2014/07/16 职场文书
工作态度恶劣检讨书
2015/05/06 职场文书
日本读研:怎样写好一篇日本研究计划书?
2019/07/15 职场文书
springboot读取resources下文件的方式详解
2022/06/21 Java/Android
Java多线程并发FutureTask使用详解
2022/06/28 Java/Android
Win11 KB5015814遇安装失败 影响开始菜单性能解决方法
2022/07/15 数码科技