管理静态文件

  • 项目中的CSS、图片、js都是静态文件

配置静态文件

  • 在settings 文件中定义静态内容
STATIC_URL = '/static/'
STATICFILES_DIRS = [os.path.join(BASE_DIR, 'static'),
]
  • 在项目根目录下创建static目录,再创建当前应用名称的目录
mysite/static/myapp/
  • 在模板中可以使用硬编码
/static/my_app/myexample.jpg
  • 在模板中可以使用static编码
{ % load static from staticfiles %}
<img src="{ % static "my_app/myexample.jpg" %}" alt="My image"/>

中间件

  • 是一个轻量级、底层的插件系统,可以介入Django的请求和响应处理过程,修改Django的输入或输出
  • 激活:添加到Django配置文件中的MIDDLEWARE_CLASSES元组中
  • 每个中间件组件是一个独立的Python类,可以定义下面方法中的一个或多个
    • _init _:无需任何参数,服务器响应第一个请求的时候调用一次,用于确定是否启用当前中间件
    • process_request(request):执行视图之前被调用,在每个请求上调用,返回None或HttpResponse对象
    • process_view(request, view_func, view_args, view_kwargs):调用视图之前被调用,在每个请求上调用,返回None或HttpResponse对象
    • process_template_response(request, response):在视图刚好执行完毕之后被调用,在每个请求上调用,返回实现了render方法的响应对象
    • process_response(request, response):所有响应返回浏览器之前被调用,在每个请求上调用,返回HttpResponse对象
    • process_exception(request,response,exception):当视图抛出异常时调用,在每个请求上调用,返回一个HttpResponse对象
  • 使用中间件,可以干扰整个处理过程,每次请求中都会执行中间件的这个方法
  • 示例:自定义异常处理
  • 与settings.py同级目录下创建myexception.py文件,定义类MyException,实现process_exception方法
from django.http import HttpResponse
class MyException():def process_exception(request,response, exception):return HttpResponse(exception.message)
  • 将类MyException注册到settings.py中间件中
MIDDLEWARE_CLASSES = ('test1.myexception.MyException',...
)
  • 定义视图,并发生一个异常信息,则会运行自定义的异常处理

Django高级管理静态文件和中间件5.1相关推荐

  1. django进阶03静态文件和模板

    原创博文地址:django进阶03静态文件和模板 静态文件和模板 静态文件:css,js,image,如果作为纯粹的web应用来看,静态文件的响应并不属于web应用范畴,因为静态文件不涉及业务逻辑,也 ...

  2. Django源码分析4:staticfiles静态文件处理中间件分析

    django源码分析 本文环境python3.5.2,django1.10.x系列1.在上一篇文章中已经分析过handler的处理过程,其中load_middleware就是将配置的中间件进行初始化, ...

  3. 07-Django静态文件及中间件使用

    一.静态文件 简述 CSS.JS.JSON.图片.字体文件... 配置settings.py STATIC_URL='/static/' STATICFILES_DIRS = [os.path.joi ...

  4. Django+Nginx部署静态文件

    通过Nginx部署Django项目时,需要通过Nginx来部署静态文件.具体操作如下: 设置static根目录 在项目的setting.py中"STATIC_URL = '/static/' ...

  5. Django加载静态文件

    方法一: 1.在app目录中创建static 目录,并在该目录下创建存储css,img,js的子目录. 2.在相应的目录下创建相对应的静态文件. static/css/mystyle.css, sta ...

  6. 014:Django商城项目静态文件修改

    本章知识点 1.商城卖家后台界面分析 2.静态模板 3.Extend和include (需要项目模板请留言- - ) 知识点讲解 1.商城卖家后台界面分析 修改base.html 主页设置Index. ...

  7. Django中配置静态文件路径

    选择了最近一直在看的Django作为我的Android Demo的server端,今天想要实现一个Android下上传文件到服务器的功能,于是想了想,暂时可以先放到静态文件目录下,然后就把自己配置静态 ...

  8. Django静态文件的管理

    Django静态资源的路径主要通过STATIC_URL和STATICFILES_DIRS来设置,由此实现不同的管理方式. 管理方式 Django中管理静态资源一般有两种方式. 第一种是在每个应用(ap ...

  9. [Django]APP级别的静态文件处理

    2019独角兽企业重金招聘Python工程师标准>>> 转载自 limodou的学习记录 [Django]APP级别的静态文件处理 静态文件在 django 中并不是非常简单的事情. ...

最新文章

  1. 【hard】146. LRU Cache
  2. centos7 php 404,CentOS7 Apache环境配置自定义404错误页面怎么解决
  3. linux脚本编写规则,shell脚本编写守则
  4. mysql8 修改加密方式_mysql8修改密码加密方式
  5. Python编程高手之路——第二章:流程控制
  6. matlab java错误_求助:matlab load mat文件出错!java exception occurred:
  7. 访问共享文件时切换默认的访问账号
  8. CodeIgniter的缓存小记
  9. 爱情指数测试脸型软件,心理测试:你和谁的脸型最像?测出你的幸运指数是多少!...
  10. →箭头符号大全复制_特别符号大全,特殊符号大全
  11. 小学认识计算机说课ppt,“认识计算机”说课稿.ppt
  12. 《明朝那些事儿》心得体会
  13. 计算机无法获得有效ip地址,无法获取ip地址,详细教您电脑无法获取ip地址的解决方法...
  14. 做开发3年,字节跳动二面JVM底层被问得哑口无言
  15. 微信支付服务商分账-请求单次分账
  16. ABB机器人画圆编程_ABB机器人使用rapid编程中问号的用法及画整圆指令
  17. 西红柿炒鸡蛋怎么做(大厨教程 教你炒出饭店的味道)
  18. Golang一日一库之 日志库 zap
  19. coda 创建和删除虚拟环境
  20. ORB-SLAM2代码详解08: 局部建图线程LocalMapping

热门文章

  1. 2022-2028年中国抗盐粘土行业发展现状调查及前景战略分析报告
  2. Java 多线程概述
  3. 后端怎么防止重复提交?(常用的做法)
  4. McCabe度量法计算程序的环路复杂性
  5. 分布式,集中式,云原生存储技术
  6. Rust和C / C ++的跨语言链接时间优化LTO
  7. 科技公司重新关注2级以上驾驶员辅助
  8. 数据治理(一):为什么要数据治理
  9. HarmonyOS UI开发 match_parent与match_content
  10. Android 弱网测试(小米手机切换3g和2g)