django-图片上传-media图像配置(后端)

一:安装pillow模块
pip3 install pillow -i https://pypi.douban.com/simple/
二:settings配置
# 上传图像配置
# 项目中存储上传文件的根目录[暂时配置],注意,uploads目录需要手动创建否则上传文件时报错
MEDIA_ROOT = os.path.join(BASE_DIR, "uploads")
# 访问上传文件的url地址前缀(默认找到MEDIA_ROOT,跟static一样)
MEDIA_URL = "/media/"
三:在django项目中转换上传文件的Url地址,总路由urls.py新增代码
from django.urls import re_path
from django.conf import settings
from django.views.static import serve
 
urlpatterns = [
      ...
    re_path(r'media/(?P.*)', serve, {"document_root": settings.MEDIA_ROOT}),
]
四:models.py配置字段
class User(models.Model):
    avatar = models.ImageField(upload_to='avatar', verbose_name='用户头像', null=True, blank=True)
五:欧了
ps:粗略解释一下配的路由
a. 配的路由中的media,是MEDIA_ROOT的别名,

b. http://127.0.0.1:8000/media/avatar/1.png(路由示例)

c. 你上传的图片,他自动帮你存在,upload_to ,这个写的文件夹里面(自动生成avatar文件夹)

e. 自动生成的文件夹名称,跟你upload_to后面配置的名称有关(你配置什么,就生成什么文件夹名称)

你可能感兴趣的:(Django,django,python,后端)