Django - staticfiles,STATIC_ROOT, STATIC_URL,STATICFILES_DIRS

staticfiles:这是一个静态资源管理的app,django.contrib.staticfiles。老的版本中,静态资源管理一直是一个问题,部分app发布的时候须要带上静态资源,在部署的时候必须将每一个app存在的static静态资源复制到同一个static目录。引入staticfiles以后,执行命令:python manage.py collectstatic 就能够方便的将所用到的app中的静态资源复制到同一目录。python

 

staticfiles的主要相关配置与分析django

  • STATIC_ROOT:运行上边提到的命令:python manage.py collectstatic 以后静态文件将要复制到的目录,这个目录只有在运行collectstatic时候才会用到,不能想固然的觉得这个目录和MEDIA_ROOT的做用是相同的,不然在开发环境的时候可能一直没法找到静态文件。app

  • STATIC_URL:设置的static file的起始url,这个只是在template里边引用到,这个参数和MEDIA_URL的含义相同。url

  • STATICFILES_DIRS:和TEMPLATE_DIRS的含义差很少,就是除了各个app的static目录之外还须要管理的静态文件设置,好比项目的公共文件差很少。blog

 

各个app目录下的静态文件static/django会自动找到,这个点和app下的templates目录下差很少。资源

 

在urls.py中加入静态文件处理的代码:开发

from django.contrib.staticfiles.urls import staticfiles_urlpatterns
# This will work if DEBUG is True
urlpatterns += staticfiles_urlpatterns()
相关文章
相关标签/搜索