1、静态文件

  项目中的图片、CSS、js都是静态文件,一般会将静态文件放到一个单独的目录下,也方便管理。一般会将静态文件放到一个单独的目录下,也可以放在应用的目录下,由于静态文件是全部应用都在使用的,通用的,因此放在项目根目录下,是最佳的。

  相关设置:

在项目的settings文件中,通过STATICFILES_DIRS列表配置静态文件的加载路径。在html页面中调用静态文件时,需要指定静态文件所在路径。

STATIC_URL = '/static/'
STATICFILES_DIRS = [
os.path.join(BASE_DIR,"static")
]

Django如何加载静态文件

  static标签:动态生成静态文件路径

  为了安全和方便维护,可以通过配置项达到隐藏真实静态文件路径的目的。可以使用static标签,根据配置项动态生成静态文件路径。

模板中使用static标签:

<img src="/static/images/mm01.jpg" alt="mm01">
<br>
<br>
{# 动态生成静态文件路径 #}
{% load static from staticfiles %}
<img src="{% static 'images/mm01.jpg' %}" alt="mm01">

urls.py:

   path('image/', views.image),

views.py:

def image(request):
return render(request,"Book/image.html")

templates/Book/image.html:

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>图片动态生成静态文件路径</title>
</head>
<body>
<img src="/static/images/mm01.jpg" alt="mm01">
<br>
<br>
{# 动态生成静态文件路径如果将STATIC_URL的字符串修改,那么会很好地隐藏文件的路径,。 #}
{% load static from staticfiles %}
<img src="{% static 'images/mm01.jpg' %}" alt="mm01">
</body>
</html>

 

这两种方法都可以加载到图片,一个是动态加载文件路径,另一个是静态加载路径。

修改STATIC_URL:

  # STATIC_URL = '/static/'
STATIC_URL = '/lst/'

总结:这种方案可以隐藏真实的静态文件路径,但是结合Nginx部署时,会将所有的静态文件都交给Nginx处理,而不用转到Django部分,这个配置就无效了,所以这个功能的缺点也来了。

  

09-Django静态文件的更多相关文章

  1. django静态文件

    django静态文件(js脚本.CSS.图片等) 默认统一放在每一个app的static文件夹下, 通过收集静态文件命令,自动将每一个app下static文件夹下的文件复制到根目录的static文件夹 ...

  2. 55 Django静态文件配置

    一.Django静态文件配置 1.项目文件夹,新建一个文件夹statics 文件夹 2.在配置文件settings.py中,配置: 文件中有第句: STATIC_URL = '/static/'#静态 ...

  3. django 静态文件

    django 1.8版本以上 django 静态文件配置. 小作之前, 一直觉得django的静态文件配置非常的麻烦. 1. 要设置url(r'^static/(?P<path>.*)&a ...

  4. Django 静态文件配置 (Nginx)

    初学Django,在访问静态文件时候遇到很多误区,一直配置不成功,在此记录一下. Django静态文件访问分为两种:一种是Debug模式下,测试开发网站时对静态文件的访问,一种是实际生产环境中对静态文 ...

  5. django静态文件处理

    django静态文件处理   从开始接接触python这门语言已有四年了,中间陆续的学习,又不断的忘记,所以基本上是没有系统的知识体系.但是挺喜欢这门简洁,强大的动态语言.最近自己私人有个项目要做,虽 ...

  6. Django静态文件配置-request方法-ORM简介-字段的增删改查

    app的创建注意事项: 在Django新创建的app要在seetings.py中添加注册,才会生效 创建app:django-adminapp an startapp app名称 或者 python3 ...

  7. Django 2.0 学习(09):Django 静态文件(样式和背景图片)

    应用的定制化:静态文件 首先,在polls目录中创建一个名叫static的目录.Django会在该目录里面查找静态文件,类似于Django在polls/template目录下查找模板文件. Djang ...

  8. Django(静态文件or路由)

    静态文件 在开发中同创会使用到 css,js,img等静态文件,这里带大家简单的介绍一下django如何处理静态页面, 配置 setting.py文件 STATIC_URL = '/static/' ...

  9. django静态文件配置

    开发环境配置 需要下面几个步骤 1. 在app目录下创建static目录,将静态文件和相关文件夹放到此目录下,如your_app/static/img等 2. 确保settings.py中的INSTA ...

  10. Django 静态文件配置(static files)

    Django version: 1.9 Python versrion: 3.5.2 这几天Django配置静态文件(本例是要加载index.css), 总是不对,最后终于试对了,这里记录下,方便以后 ...

随机推荐

  1. js 运算的内置函数

    // 一.Math.round()作用:四舍五入返回整数.(返回参数+0.5后,向下取整) // Math.round(5.57) //返回6 // Math.round(2.4) //返回2 // ...

  2. Slickflow.NET 开源工作流引擎快速入门之二: 简单并行分支流程代码编写示例

    前言:对于急切想了解引擎功能的开发人员,在下载版本后,就想尝试编写代码,完成一个流程的开发和测试.本文试图从一个最简单的并行分支流程来示例说明,如何快速了解引擎代码的编写. 版本:.NET Core2 ...

  3. Cesium专栏-地形开挖(附源码下载)

    Cesium Cesium 是一款面向三维地球和地图的,世界级的JavaScript开源产品.它提供了基于JavaScript语言的开发包,方便用户快速搭建一款零插件的虚拟地球Web应用,并在性能,精 ...

  4. 个人项目开源之Django图书借阅系统源代码

    Django写的模拟图书借阅系统源代码已开源到码云 源代码

  5. Thymeleaf常用语法:数据延迟加载

    在处理模板时,可以由模板逻辑决定是否加载数据,以提高性能.在Spring Boot控制器中设置数据时,使用LazyContextVariable可以实现这功能. 开发环境:IntelliJ IDEA ...

  6. 一文解读MPA/SPA(转)

    应用模式 模式示意图 多页面应用 每一次页面跳转的时候,后台服务器都会返回一个新的html文档,这种类型的网站也就是多页网站,也叫多页应用. 页面跳转: 返回HTML优点: 首屏时间快,SEO效果好缺 ...

  7. python获取指定文件夹下的文件和文件夹

    import os filepaths = []; dirpaths = []; pathName = r'C:\anfei\json\20191128' for root, dirs, files ...

  8. linux 命令cp -a的用法

    cp -a 保留原文件属性的前提下复制文件 cp -r dirname(源文件) destdi(目标文件) 复制目录后其文件属性会发生变化想要使得复制之后的目录和原目录完全一样包括文件权限,可以使用c ...

  9. MySQL 优化 (四)

    参数优化 innodb_log_buffer_size 此参数确定些日志文件所用的内存大小,以M为单位.缓冲区更大能提高性能,对于较大的事务,可以增大缓存大小. innodb_log_buffer_s ...

  10. s3c2440裸机-内存控制器(一、内存控制器的原理)

    1.内存接口概念 S3C2440是个片上系统,有GPIO控制器(接有GPIO管脚(GPA-GPH)),有串口控制器 (接有TXD RXD引脚),有memory controller内存控制器,有Nan ...