django配置(三)媒体文件路径配置

        简单的笔记,django项目每次都需要配置媒体文件的路径,记录下来,防止忘记。(如果出现相关的其他配置,后续补上)

    第一步:

       在settin.py文件中,添加MEDIA_ROOTMEDIA_URL,比如下面这样:

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

        MEDIA_ROOT:

        在官方文档中,MEDIA_ROOT是保存用户上传文件的目录的绝对文件系统路径。因为是绝对路径,所以使用os.path.join方法生产出MEDIA_ROOT。

        MEDIA_URL:

        同样,官方文档中给出了详细的介绍。处理由MEDIA_ROOT提供的媒体文件的URL,用于管理存储的文件。如果设置为非空值,它必须以斜杠结尾。

    第二步:

        在同一目录下的urls.py文件中添加url的配置。如下:

from LYShop.settings import MEDIA_ROOT
from django.views.static import serve
urlpatterns = [
    url(r'^media/(?P<path>.*)', serve, {"document_root": MEDIA_ROOT})
]
        这里使用了django.views.static中的serve方法,我在源码中查看该方法时,看到了如下的解释
Serve static files below a given point in the directory structure.

To use, put a URL pattern such as::

    from django.views.static import serve

    url(r'^(?P<path>.*)$', serve, {'document_root': '/path/to/my/files/'})

        意思是,在你提供的路径下面提供静态文件,使用方法就按照下面的例子,这里直接使用MEDIA_ROOT就是静态文件的路径。

        


Good

        






posted @ 2018-06-19 19:06  GF66  阅读(627)  评论(0编辑  收藏  举报