Django的静态资源

如果你的静态资源是某个APP专属,那么就在这个APP目录下建立一个static目录,就像上图report这个APP中的static目录。当浏览这个APP的网页时它会从这里去找资源,当然,它首先会从共用静态资源目录里去找我这里是commonstatic目录。如果找不到就去APP的static目录找。
关于STATIC_URL的说明:这个就是表示访问静态资源的URL是啥,这里定义的是/static/,其实你改成/statics/也是一样的或者直接指定一个具体的ULR比如https://static.xxx.com/。
关于STATIC_ROOT这个东西的说明:

这个目录名字也可以自定义但是要和配置中的名称一致。这个目录里面的东西不是你放进去的,而是运行collectstatic命令(python manage.py collectstatic)它自动收集进去的,它会把各个APP下面的static和共用static都收集进去,这个目录的作用是干嘛的呢?就是在有反向代理的时候用到,通过Nginx访问,你的URL是http://xxx.xxx.xxx/static/js/xxx.js这个它访问的是/static/这个location,那么通过Nginx你可以设置这样一个location,然后对应到实际的磁盘路径。
collectstatic命令:它会把在STATICFILES_DIRS里定义的以及APP里面的static目录里的静态文件收集到STATIC_ROOT指定的 目录里。
资源查找顺序:
这里是Django的查找顺序,你部署Nginx代理属于另外的情况。
Django的查找顺序是先从公共目录里也就是STATICFILES_DIRS里面找,然后再去APP下面的static目录找。你要不信可以做个实验资源名相同但是内容不同你看看先找哪一个。
资源如何访问:

Django的静态资源的更多相关文章
- django 访问静态资源
urlpatterns = patterns('', url(r'^$', views.show, name='index'), url(r'^static/(?P<path>.*)', ...
- 解决Django项目静态资源无法访问的问题
静态资源无法访问 url.py中配置 from django.conf.urls import url from django.views import static from django.conf ...
- django中静态资源
创建静态资源存放路径,为了设置静态媒体,你需要设立存储它们的目录.在你的项目目录(例如/myproject/),创建叫做static的目录.在static里再创建一个images目录和js目录 设置项 ...
- Django1.7如何配置静态资源访问
Django是非常轻量级的Web框架,今天散仙来看下如何在Django中配置静态的资源访问路径,一个中等规模的网站,可能就会有很多静态的资源需要访问,无论是html,txt,还是压缩包,有时候访问这些 ...
- Django 1.10 找不到静态资源解决方法
测试版本:Django 1.10 问题:Django项目找不到静态资源 解决方法: 1.首先你需要在自己的app下面创建2个目录 static 和 templates 树形结构如下(DjangoPr ...
- Django 模板中引用静态资源(js,css等)
Django 模板中免不了要用到一些js和CSS文件,查了很多网页,被弄得略晕乎,还是官网靠谱,给个链接大家可以自己看英文的. https://docs.djangoproject.com/en/1. ...
- Django使用模板后无法找到静态资源文件
Django使用模板后无法找到静态资源文件 环境配置 Django版本1.11 python版本3.6.2 前言 在编写Django网站的时候,在涉及模板方面,一些简单的例子都没有问题,但这些例子都有 ...
- Django的urls.py加载静态资源图片,TypeError: view must be a callable or a list/tuple in the case of include().
Django的urls.py加载静态资源图片,TypeError: view must be a callable or a list/tuple in the case of include(). ...
- django 不能访问静态资源的解决办法
最近在中文win10下使用python的django搭建web测试服务器,发现一个诡异的现象,正常配置好django的模型,视图和模板, 1.setting.py内容如下: ""& ...
随机推荐
- centos7上PhantomJS 过期之后改用Chrome时填的坑
突然有个自动化需求所以准备使用模拟点击的方法, 在使用之前的PhantomJS时,报错 UserWarning: Selenium support for PhantomJS has been dep ...
- 展开被 SpringBoot 玩的日子 《 一 》入门篇
SpringBoot 已经是久闻大名了,因各种原因导致迟迟未展开学习SpringBoot,今天,我将会逐渐展开被SpringBoot 玩的历程,有兴趣的,可以跟我一起来~~~~~~~ 什么是sprin ...
- MyBatis(九) 使用association定义单个对象的封装规则
(1)接口中编写方法 public Emp getEmpandDept(); (2)编写Mapper文件 <resultMap type="com.eu.bean.Emp" ...
- Express安装
安装Express 安装好node.js的前提下,再来安装Express. 1.按win+rR,打开“运行”对话框,输入:“cmd”. 2.需要创建一个目录,然后进入目录并作为当前工作目录. mkdi ...
- typescript 安装
1,全局安装 cnpm install typescript -g (tsc -v) 2,初始化 tsc --init 3,自动编译(hbuilder) 工具-插件安装-浏览eclipse插件市场-搜 ...
- Web版需求征集系统所得2,servlet中request.getParameter获值乱码问题解决
servlet获值乱码问题解决 解决办法一(最简单有效) request.setCharacterEncoding("utf-8"); 解决办法二 因为乱码问题的产生是因为默认格式 ...
- RTN 实操
创建房间 test-rtn 10001 e2uii6r7r 8LfwOcreM76OiV1V1y8jXrMG_BNa-cmktpWUznRa:kdYdsEpcYLc5ceWEHPaK0ZDI7Qc=: ...
- 如何在mysql客户端即mysql提示符下执行操作系统命令
环境描述: mysql版本:5.5.57-log 操作系统版本:Red Hat Enterprise Linux Server release 6.6 (Santiago) 需求描述: 在mysql的 ...
- python-简单邮件报警
在scrapy爬虫项目中经常遇到 爬取数据时报错无法及时处理 导致数据爬取不完整 只能先查看log才能发现报错 首先写一个简单的邮件发送模块 """ @file: ema ...
- 实验五:任意输入10个int类型数据,排序输出,并找出素数
源代码: package 数组;import java.util.*;public class vvv { public static void main(String[] args) { Scann ...