前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >django 配置media 存放调用 图片、图标等文件

django 配置media 存放调用 图片、图标等文件

作者头像
玩蛇的胖纸
发布2018-06-08 13:07:20
7090
发布2018-06-08 13:07:20
举报

一、需求分析:

一般在网站开发中,有很多类似于用户头像、用户上传的文件,这些经常要改变的媒体文件,需要有一个地方存放,于是就需要media目录,起到跟static类似的功能。

二、在settings.py中配置:

在TEMPLATES中:

代码语言:javascript
复制
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.template.context_processors.media',
            ],
        },
    },
]

在settings.py中的最后追加代码:

代码语言:javascript
复制
MEDIA_URL="/media/"
MEDIA_ROOT=os.path.join(BASE_DIR,"media")

三、在项目urls.py中增加:

代码语言:javascript
复制
......
from django.views.static import serve
from xyw.settings import MEDIA_ROOT

urlpatterns = [
    ......

    #配置上传文件的访问处理函数
    path('media/<path:path>',serve,{'document_root':MEDIA_ROOT}),
]

四、在前端中使用:

代码语言:javascript
复制
<div id="portfoliolist">

        {% for shop in all_shops.object_list %}

        <div class="portfolio shop" data-cat="shop">
            <div class="portfolio-wrapper">
<!--引入media文件代码start-->

                <img src="{{ MEDIA_URL }}{{ shop.shop_image }}" alt="店铺封面" />
<!--引入media文件代码end-->
                <div class="label">
                    <div class="label-text"><a class="text-title">{{ shop.name }}</a><span class="text-category">{{ shop.shop_sn }}</span></div>
                    <div class="label-bg"></div>
                </div>
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2018-04-16 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 一、需求分析:
  • 二、在settings.py中配置:
  • 三、在项目urls.py中增加:
  • 四、在前端中使用:
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档