Django 中图像的处理方法

图像的上传保存

  1. 前端图片的上传:
<form action="/updateinfo" method="POST" enctype="multipart/form-data">
 
            <div class="updateImg">
            <img src="{{ account.photo.url }}" alt=""/> </div>          
             
            <input name="photo" type="file" id="exampleInputFile">            
            <button id="photo" class="btn btn-danger" type="submit">上传头像</button>
</form>

其中input标签的type为file, 2. 图片模型
models.ImageField(upload_to=‘path’) upload_to的储存路径是相对于MEDIA_ROOT而来的,若MEDIA_ROOT为/media/,upload_to路径为image,则图片上传后的储存路径为/media/image

在前端显示上传的图片

{% load static %}
<body data-media-url="{% get_media_prefix %}">

使用get_media_prefxi模板tag,代表MEDIA_URL变量

 <img src="{% get_media_prefix %}/{{ page.cover }}" alt = "{{ page.cover }}">

存在的问题

每个用户上传的图片集中在一个文件夹下,容易造成命名冲突,

可参考这里