django配置app中的静态文件步骤
作者:Liam_Fang_ 发布时间:2021-03-15 21:43:57
配置静态文件的两种方式:
1 配置单独app下的静态文件,比如某个app下的单独的图片。
2 配置整个project下的静态文件,适用于那些和单独app关联不大的文件,比如jquery bootstrap 等等
配置步骤:
首先,我们需要确认在settings.py文件中的INSTALLED_APPS变量中存在 django.contrib.staticfiles
INSTALLED_APPS = (
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
)
2.1 如果我们要配置单独app下的静态文件的话,执行此步骤。
在settings.py文件中定义 STATIC_URL 变量。
STATIC_URL = '/static/'
2.2 如果我们要配置整个project下的静态文件的话,执行此步骤。
在settings.py文件中定义 STATICFILES_DIRS 变量
STATICFILES_DIRS = (
os.path.join(BASE_DIR, "static"), # 首选project静态文件搜寻路径
'/var/www/static/', # 第二选project静态文件搜寻路径,还可以有第三选,第四选……
)
3.1 如果我们要配置单独app下的静态文件的话,执行此步骤。
这时,我们需要在app中建立一个名为static 的文件夹。
3.2 如果我们要配置整个project下的静态文件的话,执行此步骤。
我们需要在整个project 中建立一个 名为static的文件夹
4 当我们在模板中无论是使用硬链接 /static/myexample.jpg 还是使用 static 标签
<img src="{% static "myexample.jpg" %}" />
都会先访问app下的static/文件夹下的myexample.jpg 文件,若app下的static文件夹中没有该文件,则访问project中的static/文件夹,查看是否有myexample.jpg文件,若有则返回,若没有则去/var/www/static/中寻找。
但我要解决的问题和这个并不太一样,我在app下新建了一个static文件夹,在该static文件夹下又建了一个目录linux2yolov3的目录,专门存放图片,本来如果是加载这里面的图片的话可以用
<img src="{% static "linux2yolov3/myexample.jpg" %}" />
但我需要的是动态显示图片,也就是从app中的views文件中传图片名称过来显示,因此上述方法不可行。
解决的方法是
<img src="{% static 'linux2yolov3/' %}{{result_img}}">
其中{{result_img}}是通过app中view里面设置context传过来的文件名称。
补充知识:Django下的templates 和 static静态文件
如果Django顶层目录中没有templates的话,就自己新建一个Directory ,这个文件是存放html文件的
1)如果在views里面用render(request,"")引入的时候引入不了,去setting 里面检查TEMPLATES下面
'DIRS': [os.path.join(BASE_DIR, 'templates')],路径配置是否正确
2)静态文件static:里面存放js文件,setting 里面需要配置
STATIC_URL = '/static/' #别名
STATICFILES_DIRS={
os.path.join(BASE_DIR, "statics")
}
来源:https://blog.csdn.net/weixin_39912556/article/details/80762046


猜你喜欢
- 概念如果索引包含所有满足查询需要的数据的索引成为覆盖索引(Covering Index),也就是平时所说的不需要回表操作判断标准使用expl
- 前言之前有人提了一个需求,我一看此需求用正则表达式最合适不过。考虑到之前每次使用正则表达式,都是临时抱佛脚,于是这次我就一边完成任务一边系统
- 废话少说,直接上代码<script type="text/javascript"> &
- 我们看一个现象:import pandas as pdtitanic = pd.read_csv('titanic_data.csv
- 躺着赚钱一位匿名知乎网友爆料用Python写了自动化交易程序,2年躺着赚了200万!相当于普通程序员10年的工资,此刻的心情...你懂的!不
- 由于这个游标 执行一下就相当于SELECT一下 其效率不敢恭维也没做深入研究。 table1结构如下 id &
- Flask或者其他框架都是封装的比较完善,我们可以不去关注路由、SESSION等到底是怎么实现的,现在我们使用socket来实现一个带有注册
- 在开发的时候, 可以使用类对方法进行封装,如果某一个方法需要访问到对象的实例属性,可以把这个方法封装成一个实例方法。如果某一个方法不需要访问
- 一、需求准备实现一个前后端实时发送消息的功能,即后端发送一条消息,前端就可以接收到该消息并显示在页面上。二、解决方法利用Flask-Sock
- 一、说明 关于matplotlib的scatter函数有许多活动参数,如果不专门注解,是
- 在并发编程中,资源的分配和回收是一个很重要的问题。对于频繁的分配和回收,会造成大量的开销。而 Go 语言的 Sync.Pool 是一个可以帮
- 一、注释当前行注释:# 被注释内容多行注释:""" 被注释内容 """二、用户输
- 本文实例为大家分享了Python飞机大战项目,供大家参考,具体内容如下import gcimport randomimport pygame
- 前言众所周知,jquery在我们日常开发中的使用频率非常高,与js相比,我们省去了冗长的获取元素的代码,不用考虑一些麻烦的兼容问题,更加方便
- 调用jQuery的ajax方法时,jQuery会根据post或者get协议对参数data进行序列化; 如果提交的数据使用复杂的json数据,
- Mysql简易索引一、没有索引的时候如何查找先忽略掉索引这个概念,如果现在直接要查某条记录,要如何查找呢?在一个页中查找如果表中的记录很少,
- 由于之前有一个项目老是要打开文件,然后用pickle.load(file),再处理。。。最后要关闭文件,所以觉得有点繁琐,代码也不简洁。所以
- 在项目中遇到了个json数据需要解析,利用Python脚本尝试分享给大家如下:import osimport pandas as pdimp
- 在前面的文章 Python 计算机视觉(十五)—— 图像特效处理 中我已经介绍了大部分的图像的特效处理,但还是忽略了油画特效的处理,在本篇文
- 1、选取最适用的字段属性MySQL可以很好的支持大数据量的存取,但是一般说来,数据库中的表越小,在它上面执行的查询也就会越快。因此,在创建表