Django media 配置

Django  media 配置

settings.py 配置 

配置 media 的路径, 以及连接到主路径

还要添加一个 上下文管理

TEMPLATES = [
    {
        'BACKEND': 'django.template.backends.django.DjangoTemplates',
        'DIRS': [os.path.join(BASE_DIR, 'templates')],
        'APP_DIRS': True,
        'OPTIONS': {
            'context_processors': [
                'django.template.context_processors.debug',
                'django.template.context_processors.request',
                'django.contrib.auth.context_processors.auth',
                'django.contrib.messages.context_processors.messages',
                'django.core.context_processors.media'
            ],
        },
    },
]

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

urls.py 配置

配置专门用来处理 media 请求的 url 

要使用专门的内置函数, 还要传递专门的参数

from django.views.static import serve
from MxOnline.settings import MEDIA_ROOT


    # media
    url(r'^media/(?P<path>.*)', serve, {"document_root": MEDIA_ROOT}),

前端使用

后端数据库总保存的形式是相对路径的文件

因此需要添加 配置过的 media 文件夹的绝对路径进行连接后

这样才可以请求到图片

<img width="200" height="120" class="scrollLoading" data-url="{{ MEDIA_URL }}{{ course_org.image }}"/>
原文地址:https://www.cnblogs.com/shijieli/p/10547411.html