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去除空格和换行符的实现方法(推荐)
Jan 04 Python
Python中二维列表如何获取子区域元素的组成
Jan 19 Python
TensorFlow实现卷积神经网络CNN
Mar 09 Python
Python Unittest根据不同测试环境跳过用例的方法
Dec 16 Python
python gensim使用word2vec词向量处理中文语料的方法
Jul 05 Python
Django 项目重命名的实现步骤解析
Aug 14 Python
Python高级特性 切片 迭代解析
Aug 23 Python
Django admin禁用编辑链接和添加删除操作详解
Nov 15 Python
Python文本处理简单易懂方法解析
Dec 19 Python
python如何实时获取tcpdump输出
Sep 16 Python
学会Python数据可视化必须尝试这7个库
Jun 16 Python
Python实战实现爬取天气数据并完成可视化分析详解
Jun 16 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
Terran热键控制
2020/03/14 星际争霸
Php中使用Select 查询语句的实例
2014/02/19 PHP
php中mysql连接方式PDO使用详解
2015/02/25 PHP
php微信开发之自定义菜单完整流程
2016/10/08 PHP
PHP 7安装使用体验之性能大提升,兼容性强,扩展支持不够(升级PHP要谨慎)
2017/07/27 PHP
jQuery 遍历- 关于closest() 的方法介绍以及与parents()的方法区别分析
2013/04/26 Javascript
Javascript实现快速排序(Quicksort)的算法详解
2015/09/06 Javascript
轻松学习jQuery插件EasyUI EasyUI表单验证
2015/12/01 Javascript
使用struts2+Ajax+jquery验证用户名是否已被注册
2016/03/22 Javascript
微信小程序 video详解及简单实例
2017/01/16 Javascript
Angular.js实现多个checkbox只能选择一个的方法示例
2017/02/24 Javascript
webpack3+React 的配置全解
2017/08/21 Javascript
JavaScript类型相关的常用操作总结
2019/02/14 Javascript
vue 实现微信浮标效果
2019/09/01 Javascript
微信小程序实现页面监听自定义组件的触发事件
2020/11/01 Javascript
[33:23]Secret vs Serenity 2018国际邀请赛小组赛BO2 第二场 8.16
2018/08/17 DOTA
Python解析xml中dom元素的方法
2015/03/12 Python
初步探究Python程序的执行原理
2015/04/11 Python
python 实现二维列表转置
2019/12/02 Python
Django model重写save方法及update踩坑详解
2020/07/27 Python
AmazeUI导航的示例代码
2020/08/14 HTML / CSS
.NET面试题:什么是反射
2016/09/30 面试题
实习教师自我鉴定
2013/12/09 职场文书
初中班主任评语大全
2014/04/24 职场文书
社区矫正工作方案
2014/06/04 职场文书
中学教师个人总结
2015/02/10 职场文书
博士给导师的自荐信
2015/03/06 职场文书
2015年护理工作总结范文
2015/04/03 职场文书
2015年政风行风工作总结
2015/04/21 职场文书
2015年学校安全工作总结
2015/04/22 职场文书
2019大学生预备党员转正思想汇报
2019/06/21 职场文书
python执行js代码的方法
2021/05/13 Python
js Proxy的原理详解
2021/05/25 Javascript
mysql定时自动备份数据库的方法步骤
2021/07/07 MySQL
Go归并排序算法的实现方法
2022/04/06 Golang
JS前端宏任务微任务及Event Loop使用详解
2022/07/23 Javascript