zoukankan      html  css  js  c++  java
  • Django中MEDIA_ROOT和MEDIA_URL

    在django上传图片前端使用动态的配置方法

    MEDIA_ROOT 代表着 要上传的路径会和你在models中写的上传的路径进行拼节形成最终文件上传的路径 
    MEDIA_URL主要就是映射了 在前端使用media_url 当你的media_root 发生改变的时候不用去更改前端模板中的内容

    要想正常的显示图片 还需要下面几步:
    1
    在settings 中配置路径
    MEDIA_URL = '/media/'
    MEDIA_ROOT = os.path.join(BASE_DIR, 'media')
    2
    在TEMPLATES 中添加一个上下文环境 'django.core.context_processors.media', 这个会
    自动的把MEDIA_URL 注册到前端的模板中的 没有这个上下文环境 MEDIA_URL在前端是没有显示的
    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',
                ],
            },
        },
    3
    在url中配置media请求的url
    首先需要导入下面的库 和在settings 中配置的 MEDIA_ROOT上传路径
    from django.views.static import serve
    from MxOnline.settings import MEDIA_ROOT
     
    配置url  固定的 里面的内容不能改的
    url(r'media/(?P<path>.*)$', serve, {'document_root': MEDIA_ROOT}),
    </code>
  • 相关阅读:
    移动终端app测试点总结
    Android测试环境搭建(win7)
    Jenkins知识地图
    Jenkins快速上手
    接口测试总结
    性能测试总结(三)--工具选型篇
    性能测试总结(二)---测试流程篇
    性能测试总结(一)---基础理论篇
    网友评论诺基亚和Android
    手撕伪鸡汤,人事部门经理给你的八个职场忠告
  • 原文地址:https://www.cnblogs.com/icat-510/p/9034727.html
Copyright © 2011-2022 走看看