首页 > 其他分享 >django前端显示图片

django前端显示图片

时间:2022-11-24 16:55:06浏览次数:67  
标签:DIRS 前端 django blog static app 图片

参考:https://blog.csdn.net/J_wb49/article/details/103055817

一. 基本方法

1.前提条件

创建好项目后,在settings.py中默认创建好了图片需要的两个条件

  • INSTALLED_APPS中默认添加了'django.contrib.staticfiles'
  • settings.py默认添加了STATIC_URL = '/static/'
2.创建图片保存位置

在新建的app目录下新建一个static文件夹,在里面再新建一个image文件夹来保存图片,比如图片位置是blog/static/image/1.jpg

3.html中显示图片的方式
{% load static %}

#下面两种方式都可
<img  src="/static/image/data.png">
<img src="{% static 'image/data.png' %}">

注意:

如果app比较多,为了避免多个app下的图片名称相同,通常我们再staic目录下新建一个和app同名的文件夹,然后图片放在此目录下,比如blog/static/blog/1.jpg

4.目录结构参考

二. 创建公共static存放位置

1.添加STATICFILES_DIRS

如果有一些静态文件是不和任何app挂钩的。那么可以在settings.py中添加STATICFILES_DIRS,以后DTL就会在这个列表的路径中查找静态文件。比如可以设置为:

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

其中static目录的位置和应用blog同级,BASE_DIR就是项目所在的根目录/ORMTEST

2.静态资源的加载顺序

公共static ->app下static

如果公共static(需要配置STATICFILES_DIRS)下不存在对应的文件,就按照settings.py中app注册的顺序查找。

3.html中显示图片
方式一样
{% load static %}
<img  src="/static/image/data.png">
4. html中不写{% load static %}

settings.py中的TEMPLATES/OPTIONS添加'builtins':['django.templatetags.static'],这样以后在模版中就可以直接加载图片

TEMPLATES = [
    {
        'BACKEND': 'django.template.backends.django.DjangoTemplates',
        'DIRS': [],
        'APP_DIRS': True,
        'OPTIONS': {
            'context_processors': [
                'django.template.context_processors.debug',
                'django.template.context_processors.request',
                'django.contrib.auth.context_processors.auth',
                'django.contrib.messages.context_processors.messages',
            ],
            'builtins': ['django.templatetags.static']

        },
    },
]

标签:DIRS,前端,django,blog,static,app,图片
From: https://www.cnblogs.com/regit/p/16922416.html

相关文章

  • CSAPPlab报告的图片
       ......
  • 【COCOS2DX-LUA 脚本开发之十二】Hybrid模式-利用AssetsManager实现在线更新脚本文件l
    本站文章均为​​李华明Himi​​​原创,转载务必在明显处注明:(作者新浪微博:​​@李华明Himi​​​) width="150"height="210"framebo......
  • 浏览器访问url会自动下载图片
    有时候我们会发现,在浏览器地址输入图片链接,浏览器可以直接下载,或者直接展示图片如果指定了Content-Type是image/jpeg,则产生的外链是在浏览器上直接显示如果设置的Conte......
  • word图片不能往左拖动
    1.选中图片,进入如下位置  2.选这个 3.Done. ......
  • 前端分页
     handleCurrentChangeDetail(val,datas){      this.detailPage.currentPage=val      letlist=datas&&datas.length?datas:thi......
  • 一个Nginx部署多个vue前端项目总结
    摘要:近来接手了一个二次开发的前后端分离模式的项目,其中在前端项目的部署上需要让2个前端项目都部署到一个IP地址和端口下,那么我们这里就要用到Nginx了,接下来我们看看如何在......
  • JsonResult向前端返回值,报错500
    1,问题原因因为返回信息为json对象,我在controller方法所在的入口类上,添加的注解是:@Controller而@Controller是不适合返回json内容的2,解决方法方法一:不影响其它方法......
  • Django安装和卸载
    目录安装与验证卸载安装与验证安装pip源:https://pypi.douban.com/simple/豆瓣源https://pypi.tuna.tsinghua.edu.cn/simple清华源格式:pipins......
  • Python爬取某个网站的图片
    最近需要将某个网站的图片爬取下来,想尽了很多办法,后来使用python的爬虫技术将其爬取出来importrequestsdefdownload_save_img(img_url,file_name):headers={......
  • web前端开发用什么编辑工具好?
    现在市面上的前端开发工具数不胜数,令人眼花缭乱,作为半吊子入坑的前端开发人员,下面分享一些自己的工具使用库。  当涉及到开发工具时,肯定避不开编辑器:  SublimeText......