django配置app中的静态文件步骤


Posted in Python onMarch 27, 2020

配置静态文件的两种方式:

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")
}

以上这篇django配置app中的静态文件步骤就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Django框架下在URLconf中指定视图缓存的方法
Jul 23 Python
Python实现简单登录验证
Apr 13 Python
Python中Selenium模拟JQuery滑动解锁实例
Jul 26 Python
python shell根据ip获取主机名代码示例
Nov 25 Python
浅谈python爬虫使用Selenium模拟浏览器行为
Feb 23 Python
Python3.6简单反射操作示例
Jun 14 Python
使用 Python 实现简单的 switch/case 语句的方法
Sep 17 Python
利用python求积分的实例
Jul 03 Python
Python操作远程服务器 paramiko模块详细介绍
Aug 07 Python
Python编程快速上手——Excel到CSV的转换程序案例分析
Feb 28 Python
django 数据库返回queryset实现封装为字典
May 19 Python
使用K.function()调试keras操作
Jun 17 Python
使用卷积神经网络(CNN)做人脸识别的示例代码
Mar 27 #Python
django实现HttpResponse返回json数据为中文
Mar 27 #Python
python对XML文件的操作实现代码
Mar 27 #Python
Python Socketserver实现FTP文件上传下载代码实例
Mar 27 #Python
使用python从三个角度解决josephus问题的方法
Mar 27 #Python
解决django接口无法通过ip进行访问的问题
Mar 27 #Python
Django 实现将图片转为Base64,然后使用json传输
Mar 27 #Python
You might like
有关php运算符的知识大全
2011/11/03 PHP
解析php中获取url与物理路径的总结
2013/06/21 PHP
php实现常见图片格式的水印和缩略图制作(面向对象)
2016/06/15 PHP
php实现简易计算器
2020/08/28 PHP
javascript 节点排序 2
2011/01/31 Javascript
使用javascript:将其它类型值转换成布尔类型值的解决方法详解
2013/05/07 Javascript
手机Web APP如何实现分享多平台功能
2016/08/19 Javascript
AngularJS ng-style中使用filter
2016/09/21 Javascript
浅谈JavaScript的函数及作用域
2016/12/30 Javascript
jQuery和CSS仿京东仿淘宝列表导航菜单
2017/01/04 Javascript
EasyUi 打开对话框后控件赋值及赋值后不显示的问题解决办法
2017/01/19 Javascript
微信小程序中setInterval的使用方法
2017/09/29 Javascript
小程序组件之仿微信通讯录的实现代码
2018/09/12 Javascript
json数据格式常见操作示例
2019/06/13 Javascript
解决vue-cli@3.xx安装不成功的问题及搭建ts-vue项目
2020/02/09 Javascript
vue项目打包后提交到git上为什么没有dist这个文件的解决方法
2020/09/16 Javascript
利用js canvas实现五子棋游戏
2020/10/11 Javascript
如何在JavaScript中等分数组的实现
2020/12/13 Javascript
跟老齐学Python之大话题小函数(2)
2014/10/10 Python
浅谈python 四种数值类型(int,long,float,complex)
2016/06/08 Python
对pandas里的loc并列条件索引的实例讲解
2018/11/15 Python
Python学习笔记之lambda表达式用法详解
2019/08/08 Python
Virtualenv 搭建 Py项目运行环境的教程详解
2020/06/22 Python
Python之多进程与多线程的使用
2021/02/23 Python
HTML5+CSS3实例 :canvas 模拟实现电子彩票刮刮乐代码
2016/12/30 HTML / CSS
Burberry英国官网:英国标志性奢侈品牌
2017/03/29 全球购物
资产经营总监岗位职责范文
2013/12/01 职场文书
行政助理工作职责范本
2014/03/04 职场文书
婚前保证书
2014/04/29 职场文书
介绍信格式
2015/01/30 职场文书
音乐教师个人工作总结
2015/02/06 职场文书
2015学校六五普法工作总结
2015/04/22 职场文书
行政答辩状范文
2015/05/21 职场文书
贷款工资证明范本
2015/06/12 职场文书
SqlServer: 如何更改表的文件组?(进而改变存储位置)
2021/04/05 SQL Server
JavaScript数组 几个常用方法总结
2021/11/11 Javascript