django配置存储上传文件根目录并使用xadmin添加本地图片

1.在yd_api/settings/dev.py文件中添加配置

import os,sys
BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
# 项目中存储上传文件的根目录[暂时配置],注意,uploads目录需要手动创建否则上传文件时报错 
MEDIA_ROOT=os.path.join(BASE_DIR,"uploads") 
# 访问上传文件的url地址前缀 
MEDIA_URL ="/media/"

2.yd_api/apps/home/models.py文件中

from django.db import models
from yd_api.utils.models import BaseModel

class Banner(BaseModel):
    """轮播图"""
    # 字段声明
    # 使用upload_to参数会在上传文件时创建banner/目录,并将上传的图片存入到此目录下
    image = models.ImageField(upload_to="banner",null=True,blank=True,verbose_name="轮播图片")
    link = models.CharField(max_length=500,verbose_name="广告链接")
    name = models.CharField(max_length=250,verbose_name="广告标题")
    note = models.CharField(max_length=150,null=True,blank=True,verbose_name="备注信息")

    # 表信息
    class Meta:
        db_table = "yd_banner"
        verbose_name = "轮播广告"
        verbose_name_plural = verbose_name  # 避免出现多个复数数据时,自动加"s",设置复数和单数一致

    # 自定义字段/查询方法
    def __str__(self):
        return self.name

3.在总路由yd_api/urls.py文件中配置

from django.urls import re_path
from django.views.static import serve
from django.conf import settings
urlpatterns = [
    re_path(r'media/(?P.*)', serve, {"document_root": settings.MEDIA_ROOT}),
]

4.在xadmin后台管理界面添加数据

django配置存储上传文件根目录并使用xadmin添加本地图片_第1张图片

 5.查看

django配置存储上传文件根目录并使用xadmin添加本地图片_第2张图片

 或者使用postman发请求查看数据是否正确返回

django配置存储上传文件根目录并使用xadmin添加本地图片_第3张图片

django配置存储上传文件根目录并使用xadmin添加本地图片_第4张图片 

 

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