html上传图片,django获取前台上传的图片
发布日期:2021-07-01 00:08:54 浏览次数:2 分类:技术文章

本文共 800 字,大约阅读时间需要 2 分钟。

1、在项目的配置中添加,

MEDIA_ROOT = ''# 文件的路径,空为当前项目下的直接路径,也可以使用绝对路径,保存到电脑上的某一个目录

MEDIA_URL='/'# 项目的url

2、html上传图片,使用form提交或者ajax提交文件都行

一、.html表单上传(不推荐)

最传统的图片上传方式是form表单上传,使用form表单的input[type=”file”]控件,打开系统的文件选择对话框,从而达到选择文件并上传的目的。

web上传图片的几种方法

form表单上传。表单上传需要注意以下几点:

(1)、.提供form表单,method必须是post。

(2)、form表单的enctype必须是multipart/form-data。

二、ajax

FormData接口。通过FormData对象可以更灵活方便的发送表单数据,因为可以独立于表单使用。如果你把表单的编码类型设置为multipart/form-data ,则通过FormData传输的数据格式和表单通过submit()方法传输的数据格式相同。

web上传图片的几种方法

ajax无刷新上传

3、django后台获取文件

image = request.FILES.get('img')#得到文件对象后,可以使用image.name 获取到图片的名字image.size获取到图片的大小image.read()可以获取图片内容path = default_storage.save('news/'+image.name,ContentFile(image.read()))# 保存文件# 如果MEDIA_ROOT有路径的话,添加上tmp_file = os.path.join(settings.MEDIA_ROOT, path)# 上传文件的路径

然后就可以将路径保存到数据库中

4、前台获取图片并显示

{
{ context.news_image.url }}

转载地址:https://lztom.blog.csdn.net/article/details/102573948 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:使用django内置的文件系统上传图片并且前台显示
下一篇:Django输入时间报错RuntimeWarning: DateTimeField Grades.gdate received a naive datetime

发表评论

最新留言

哈哈,博客排版真的漂亮呢~
[***.90.31.176]2024年04月17日 12时14分45秒