概念

  • 项目中的CSS、图片、js都是静态文件
  • 一般会将静态文件放到一个单独的目录中,以方便管理
  • 在html页面中调用时,也需要指定静态文件的路径,Django中提供了一种解析的方式配置静态文件路径
  • 静态文件可以放在项目根目录下,也可以放在应用的目录下,由于有些静态文件在项目中是通用的,所以推荐放在项目的根目录下,方便管理

配置静态文件

  • 在项目根目录下创建静态文件目录,再创建img、css、js目录
  • 在项目/settings.py文件中定义静态文件查找路径(假如静态文件夹名为:static)
    STATICFILES_DIRS = [os.path.join(BASE_DIR, 'static'),]
  • 为了安全,可以在项目/settings.py文件中配置STATIC_URL项,隐藏真实路径
    # STATIC_URL = '/static/'
    STATIC_URL = '/myini/'
  • 在模板中写成固定路径,后期维护太麻烦,可以使用static标签,根据配置项生成静态文件路径。(备注:这种方案可以隐藏真实的静态文件路径,但是结合Nginx布署时,会将所有的静态文件都交给Nginx处理,而不用转到Django部分,这项配置就无效了)

<html>
        <head>
            <title>静态文件</title>
        </head>
        <body>
        修改前:<img src="/static/img/sj.jpg"/>
        <hr>
        修改后:<img src="/abc/img/sj.jpg"/>
        <hr>
        动态配置:
        {%load static from staticfiles%}
        <img src="{%static "img/sj.jpg" %}"/>
        </body>
        </html>

最新文章

  1. va_start和va_end使用详解
  2. [uwsgi] no request plugin is loaded, you will not be able to manage requests.
  3. postgresql 函数&amp;存储过程 ; 递归查询
  4. RESTful WebService入门(转)
  5. (document).height()与$(window).height()区别
  6. Codeforces 367
  7. 1194: [HNOI2006]潘多拉的盒子 - BZOJ
  8. &lt;微软的软件测试之道&gt;读书笔记3
  9. JavaScript之面向对象学习三原型语法升级
  10. Swift - 文本输入框(UITextField)的用法
  11. mysql 中 SQL_CALC_FOUND_ROWS 功能
  12. UESTC 30 &amp;&amp;HDU 2544最短路【Floyd求解裸题】
  13. Linux:快速找到占用CPU过高的Thread
  14. [Linux]Ubuntu与终端破墙
  15. scrollview嵌套recyclerview卡顿现象
  16. 41 【docker】初识
  17. 使用loader打包静态文件-样式2
  18. error C2027: use of undefined type &#39;COleDispatchImpl&#39;的解决方法
  19. linux基础——文件挂载,lamp安装
  20. 【swupdate文档 一】嵌入式系统的软件管理

热门文章

  1. DVWA靶场之File Upload(文件上传)通关
  2. Java中使用split方法根据英文问号?切割字符串时报错
  3. 题解 P4449 于神之怒加强版
  4. 题解 Smooth
  5. 如何选择Spring cloud和 Spring Boot对应的版本
  6. C#设计模式---模板方法模式(Template Method Pattern)
  7. 连接共享打印机失败错误代码0x80070035
  8. tensorflow实现Word2vec
  9. 如何将eclipse中项目部署到tomcat
  10. Ant高级-path和fileset