django 网站上传资源的显示与配置

1.  上传资源的配置

1. 首先在项目里创建一个名称叫media的文件夹专门保存用户上传

2. settings.py文件配置上传资源的路径

# 上传资源路径,如果图片,上传文件等
MEDIA_URL = '/media/'                           # 设置上传资源前缀名称
MEDIA_ROOT = os.path.join(BASE_DIR, 'media')    # 设置上传文件路径

2.  model中字段

    image = models.ImageField(upload_to="org/%Y/%m", verbose_name=u"logo", max_length=100, blank=True)

3. 配置路由映射

要为文件的访问配置一个专门的url路由映射

from django.views.static import serve                       # 导入django自带的serve静态资源逻辑
from mx_online.settings import MEDIA_ROOT


 # 配置上传文件的访问处理函数
    url(r'^media/(?P<path>.*)$', serve, {"document_root": MEDIA_ROOT}),

4. 在配置文件配置静态资源处理类

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',
            ],
        },
    },
]

5. 前段显示

                          <a href="org-detail-homepage.html">
                                    <img width="200" height="120" class="scrollLoading"
                                         data-url="{{ MEDIA_URL }}{{ ji.image }}"/>         {# 需要拼接静态资源路径 #}
                                </a>

猜你喜欢

转载自www.cnblogs.com/yuqiangli0616/p/9560004.html
今日推荐