您当前的位置:首页 > IT编程 > python
| C语言 | Java | VB | VC | python | Android | TensorFlow | C++ | oracle | 学术与代码 | cnn卷积神经网络 | gnn | 图像修复 | Keras | 数据集 | Neo4j | 自然语言处理 | 深度学习 | 医学CAD | 医学影像 | 超参数 | pointnet | pytorch | 异常检测 | Transformers | 情感分类 | 知识图谱 |

自学教程:Django实现上传图片功能

51自学网 2021-10-30 22:18:43
  python
这篇教程Django实现上传图片功能写得很实用,希望能帮到您。

本文实例为大家分享了Django实现上传图片的具体代码,供大家参考,具体内容如下

1.设置存放上传的图片的文件夹

settings.py

MEDIA_ROOT = os.path.join(BASE_DIR, 'media').replace('//', '/')MEDIA_URL = '/media/'

2.创建图片路径的表结构

models.py

# 存放图片的表class Avatar(models.Model):    user = models.CharField(max_length=100)    photo = models.ImageField(upload_to='photos', default='avatar.jpg')

3.构建并实施迁移文件

python manage.py makemigrationspython manage.py migrate

4.添加路径

urls.py

from django.conf import settingsfrom django.conf.urls.static import staticurlpatterns = [          path('upload/', views.UpLoadInfo), ] + static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)

5.写逻辑

在view.py

# 上传图片def UpLoadInfo(request):    if request.method == 'POST':        # img = request.FILES.get('photo')        # user = request.FILES.get('photo').name        new_img = models.Avatar(            photo=request.FILES.get('photo'),  # 拿到图片            user=request.FILES.get('photo').name  # 拿到图片的名字        )        new_img.save()  # 保存图片        return HttpResponse('上传成功!')    return render(request, 'upload.html')

6.添加html页面

文件夹templates

<!DOCTYPE html><html lang="en"><head>    <meta charset="UTF-8">    <title>Title</title></head><body><form action="/upload/" method="POST" enctype="multipart/form-data">{% csrf_token %}    <input name="photo" type="file" >    <button id="upload" type="submit">上传头像</button></form></body></html>

7.效果

运行项目,进入upload查看

上传成功之后

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持51zixue.net。


详解如何用Python登录豆瓣并爬取影评
Python接口自动化浅析登录接口测试实战
万事OK自学网:51自学网_软件自学网_CAD自学网自学excel、自学PS、自学CAD、自学C语言、自学css3实例,是一个通过网络自主学习工作技能的自学平台,网友喜欢的软件自学网站。