Django静态资源URL STATIC_ROOT的配置方法


Posted in Python onNovember 08, 2014

缘由

新手学习 Django 当配置好 HTML 页面后,就需要使用一些静态资源,如图片,JS 文件,CSS 样式等,但是 Django 里面使用这些资源并不是直接引用一下就好,还要配置路径即 STATIC_URL 如果这个配置不好的话,请求这些静态资源将返回 HTTP 404 。

经验传授

1. 输出 settings.py 文件里面的 STATIC_URL 到HTML页面,看一下物理路径指向了哪些,通常是不是跑出根目录的。这里给个DEMO:

def home(request):

    t = get_template("index.html")

    html = t.render(Context({

        "template_dir":settings.TEMPLATE_DIRS[0],

        "title":"Home",

        "static_dir":settings.STATIC_ROOT}))

    return HttpResponse(html)

这样访问的HTML页面就可以看到这些路径了。

2. 配置 STATIC_ROOT 变量

STATIC_ROOT = os.path.join(os.path.dirname(__file__), '..', 'templates/content').replace('\\','/')

可能通过调整第二个和第三个参数来将路径修改正确。(多调试)

3. 在 urls.py 文件中配置 urlpatterns 变量(主要看高亮这一行):

urlpatterns = patterns('',

    url(r'^$', home),

    url(r'^static/(?P<path>.*)$','django.views.static.serve',{'document_root':settings.STATIC_ROOT}),

)

4. 测试以上配置:

<head>

    <meta charset="UTF-8"/>

    <title>{{ title }} - Oger</title>

    <script type="text/javascript" src="/static/scripts/jquery-1.11.0.min.js"></script>

</head>

<head>
    <meta charset="UTF-8"/>
    <title>{{ title }} - Oger</title>
    {% load staticfiles %}
    <script type="text/javascript" src="{% static 'scripts/jquery-1.11.0.min.js' %}"></script>
</head>
[/code]

这两种用法都是可以的。

用 Django 开发Web站点还是很方便的。继续学习中...

Python 相关文章推荐
Python查看多台服务器进程的脚本分享
Jun 11 Python
CentOS6.5设置Django开发环境
Oct 13 Python
Python 列表理解及使用方法
Oct 27 Python
Python 计算任意两向量之间的夹角方法
Jul 05 Python
超简单的Python HTTP服务
Jul 22 Python
Python实现直方图均衡基本原理解析
Aug 08 Python
用openCV和Python 实现图片对比,并标识出不同点的方式
Dec 19 Python
Python3监控疫情的完整代码
Feb 20 Python
基于Python模拟浏览器发送http请求
Nov 06 Python
Python Selenium异常处理的实例分析
Feb 28 Python
如何用python清洗文件中的数据
Jun 18 Python
教你怎么用Python selenium操作浏览器对象的基础API
Jun 23 Python
Python中的__new__与__init__魔术方法理解笔记
Nov 08 #Python
Python使用百度API上传文件到百度网盘代码分享
Nov 08 #Python
python中readline判断文件读取结束的方法
Nov 08 #Python
Python实现基于HTTP文件传输实例
Nov 08 #Python
Python使用urllib模块的urlopen超时问题解决方法
Nov 08 #Python
Python set集合类型操作总结
Nov 07 #Python
数据挖掘之Apriori算法详解和Python实现代码分享
Nov 07 #Python
You might like
优化NFR之一 --MSSQL Hello Buffer Overflow
2006/10/09 PHP
PHP实用函数分享之去除多余的0
2015/02/06 PHP
php reset() 函数指针指向数组中的第一个元素并输出实例代码
2016/11/21 PHP
Mootools 1.2教程(2) DOM选择器
2009/09/14 Javascript
html5 canvas js(数字时钟)实例代码
2013/12/23 Javascript
js实现屏幕自适应局部代码分享
2015/01/30 Javascript
PHP+jQuery+Ajax实现多图片上传效果
2015/03/14 Javascript
jQuery实现的五子棋游戏实例
2015/06/13 Javascript
JS给Textarea文本框添加行号的方法
2015/08/20 Javascript
JS实现的仿淘宝交易倒计时效果
2015/11/27 Javascript
HTML5基于Tomcat 7.0实现WebSocket连接并实现简单的实时聊天
2016/10/31 Javascript
JavaScript 函数节流详解及方法总结
2017/02/09 Javascript
微信公众号菜单配置微信小程序实例详解
2017/03/31 Javascript
详解Chai.js断言库API中文文档
2018/01/31 Javascript
JavaScript折半查找(二分查找)算法原理与实现方法示例
2018/08/06 Javascript
js删除对象/数组中null、undefined、空对象及空数组方法示例
2018/11/14 Javascript
微信小程序分享海报生成的实现方法
2018/12/10 Javascript
微信小程序登录态和检验注册过没的app.js写法
2019/05/22 Javascript
移动端 Vue+Vant 的Uploader 实现上传、压缩、旋转图片功能
2019/06/10 Javascript
vue 解决form表单提交但不跳转页面的问题
2019/10/30 Javascript
TypeScript高级用法的知识点汇总
2019/12/17 Javascript
vue中watch和computed为什么能监听到数据的改变以及不同之处
2019/12/27 Javascript
Python列表(list)、字典(dict)、字符串(string)基本操作小结
2014/11/28 Python
使用IronPython把Python脚本集成到.NET程序中的教程
2015/03/31 Python
python简单实现操作Mysql数据库
2018/01/29 Python
详解Python的数据库操作(pymysql)
2019/04/04 Python
python接口调用已训练好的caffe模型测试分类方法
2019/08/26 Python
解析PyCharm Python运行权限问题
2020/01/08 Python
Python3中小括号()、中括号[]、花括号{}的区别详解
2020/11/15 Python
CSS3基础(RGBa、text-shadow、box-shadow、border-radius)
2012/11/13 HTML / CSS
将时尚融入珠宝:Adornmonde
2019/10/17 全球购物
幼儿教师个人求职信范文
2013/09/21 职场文书
六一儿童节标语
2014/10/08 职场文书
教师学习党的群众路线教育实践活动心得体会
2014/10/31 职场文书
销售会议开幕词
2016/03/04 职场文书
MySQL中出现乱码问题的终极解决宝典
2021/05/26 MySQL