美文网首页
Django学习笔记--static和media文件路径设置

Django学习笔记--static和media文件路径设置

作者: 蓝色的风 | 来源:发表于2019-07-10 09:40 被阅读0次

    对于常用的css、js、image和常用的工具类在django项目中要设置一个全局的路径,对所有的app都可以访问到这个路径下的文件

    • 1在django项目的setting文件中设置对应的static和media路径
    # 设置全局的共享静态文件
    STATIC_URL = '/static/'
    STATICFILES_DIRS = [
        os.path.join(BASE_DIR, 'static')
    ]
    
    # 配置好了之后用户上传的文件都会上传到这个文件下,和static文件一样都是一个全局访问的
    MEDIA_ROOT = os.path.join(BASE_DIR,'media')
    
    • 2.上传文件到项目中都有在media文件下新建目录,比如下面的例子,定义的一个model中头像的保存字段,上传文件时自动在media文件下新建avatar文件夹,头像都会保存在avatar文件下
    # 用户头像(有疑问),这么写,上传的文件会自动保存到某个位置(upload_to指定的位置),然后把路径放到该字段中,
        avatar = models.FileField(upload_to='avatar/', default='avatar/default.png')
    
    • 3.对media文件的使用,在项目urls文件中配置对应的路由,
    # 导入media
    from django.views.static import serve
    from DjangoDay02 import settings
    
    urlpatterns = [
        url(r'^admin/', admin.site.urls),
        # 开启media的访问路径,使用有名分组适配路径
        url(r'^media/(?P<path>.*)',serve,{"document_root":settings.MEDIA_ROOT}),
    ]
    
    • 4.在对应的模板文件中拼接对应的字符串就可以访问对应的文件了
     <a href="#"><img src="/media/{{ request.user.avatar }}"></a>
    
    media和static文件目录

    相关文章

      网友评论

          本文标题:Django学习笔记--static和media文件路径设置

          本文链接:https://www.haomeiwen.com/subject/pxkckctx.html