Python中Django框架下的staticfiles使用简介


Posted in Python onMay 30, 2015

django1.3新加入了一个静态资源管理的app,django.contrib.staticfiles。在以往的django版本中,静态资源的管理一向都是个问题。部分app发布的时候会带上静态资源文件,在部署的时候你必须手动从各个app中将这些静态资源文件复制到同一个static目录。在引入staticfiles后,你只需要执行./manage.py collectstatic就可以很方便的将所用到app中的静态资源复制到同一目录。

staticfiles的引入,方便了django静态文件的管理,不过感觉staticfiles的文档写的并不是太清楚,初次使用的时候还是让我有些困惑。

下面简单的介绍一下staticfiles的主要配置:

  •     STATIC_ROOT:运行manage.py collectstatic后静态文件将复制到的目录。注意:不要把你项目的静态文件放到这个目录。这个目录只有在运行collectstatic时才会用到。我最开始想当然的以为这个目录和MEDIA_ROOT的作用是相同的,致使在开发环境下一直无法找到静态文件。
  •     STATIC_URL:设置的static file的起始url,这个只可以在template里面引用到。这个参数和MEDIA_URL的含义差不多。
  •     STATICFILES_DIRS:除了各个app的static目录以外还需要管理的静态文件位置,比如项目公共的静态文件差不多。和TEMPLATE_DIRS的含义差不多。
  •     各个APP下static/目录下的静态文件django的开发服务器会自动找到,这点和以前APP下的templates目录差不多。
  •     在urls.py中加入静态文件处理的代码
  •  
from django.contrib.staticfiles.urls import staticfiles_urlpatterns
  # ... the rest of your URLconf goes here ...
  urlpatterns += staticfiles_urlpatterns()
Python 相关文章推荐
Python OS模块常用函数说明
May 23 Python
使用Python读写及压缩和解压缩文件的示例
Jul 08 Python
python微信跳一跳系列之棋子定位颜色识别
Feb 26 Python
Python3使用SMTP发送带附件邮件
Jun 16 Python
python使用正则表达式来获取文件名的前缀方法
Oct 21 Python
Python将一个Excel拆分为多个Excel
Nov 07 Python
pandas 数据归一化以及行删除例程的方法
Nov 10 Python
python使用tomorrow实现多线程的例子
Jul 20 Python
使用pyinstaller逆向.pyc文件
Dec 20 Python
Python timer定时器两种常用方法解析
Jan 20 Python
浅谈python中频繁的print到底能浪费多长时间
Feb 21 Python
如何利用Python实现n*n螺旋矩阵
Jan 18 Python
简单介绍Python的Django框架的dj-scaffold项目
May 30 #Python
Python的Django框架中settings文件的部署建议
May 30 #Python
Python的Django中django-userena组件的简单使用教程
May 30 #Python
在SAE上部署Python的Django框架的一些问题汇总
May 30 #Python
python实现比较两段文本不同之处的方法
May 30 #Python
python统计文本文件内单词数量的方法
May 30 #Python
python使用win32com库播放mp3文件的方法
May 30 #Python
You might like
PHP实现操作redis的封装类完整实例
2015/11/14 PHP
php使用curl获取header检测开启GZip压缩的方法
2018/08/15 PHP
Javascript优化技巧(文件瘦身篇)
2008/01/28 Javascript
JQuery Tips(2) 关于$()包装集你不知道的
2009/12/14 Javascript
PHP开发者必须掌握的6个关键字
2014/04/14 Javascript
jQuery1.9.1针对checkbox的调整方法(prop)
2014/05/01 Javascript
node.js中的fs.existsSync方法使用说明
2014/12/17 Javascript
基于jQuery Ajax实现上传文件
2016/03/24 Javascript
AngularJS基础 ng-if 指令用法
2016/08/01 Javascript
js判断请求的url是否可访问,支持跨域判断的实现方法
2016/09/17 Javascript
a标签跳转到指定div,jquery添加和移除class属性的实现方法
2016/10/10 Javascript
Nodejs之http的表单提交
2017/07/07 NodeJs
vue学习之mintui picker选择器实现省市二级联动示例
2017/10/12 Javascript
JavaScript ES2019中的8个新特性详解
2019/02/20 Javascript
微信小程序云开发获取文件夹下所有文件(推荐)
2019/11/14 Javascript
Python中for循环和while循环的基本使用方法
2015/08/21 Python
Python安装使用命令行交互模块pexpect的基础教程
2016/05/12 Python
Windows中安装使用Virtualenv来创建独立Python环境
2016/05/31 Python
Python备份目录及目录下的全部内容的实现方法
2016/06/12 Python
Python退火算法在高次方程的应用
2018/07/26 Python
对python dataframe逻辑取值的方法详解
2019/01/30 Python
Django ModelForm组件使用方法详解
2019/07/23 Python
Numpy之将矩阵拉成向量的实例
2019/11/30 Python
使用pandas读取表格数据并进行单行数据拼接的详细教程
2021/03/03 Python
canvas 下载二维码和图片加水印的方法
2018/03/21 HTML / CSS
俄罗斯茶和咖啡网上商店:Tea.ru
2021/01/26 全球购物
会计电算化专业毕业生求职信范文
2013/12/10 职场文书
元旦晚会上单位领导演讲稿
2014/01/05 职场文书
幼儿园教师教学反思
2014/02/06 职场文书
学校标语大全
2014/06/19 职场文书
功夫熊猫观后感
2015/06/10 职场文书
严以用权专题学习研讨会发言材料
2015/11/09 职场文书
毕业生求职自荐信(2016最新版)
2016/01/28 职场文书
html5中sharedWorker实现多页面通信的示例代码
2021/05/07 Javascript
php png失真的原因及解决办法
2021/11/17 PHP
Javascript中async与await的捕捉错误详解
2022/03/03 Javascript