详解Django模版中加载静态文件配置方法

yipeiwu_com6年前Python基础

1、settings.INSTALLED_APPS下添加:django.contrib.staticfiles

2、settings.py下添加:STATIC_URL = '/static/'

3、

(1)在APP下新建文件夹static,然后在这个static文件夹下创建一个当前APP的名字的文件夹,再把静态文件放到这个文件夹下:(类似于Templates配置)

在模板中这样调用:

{% load static %}
<img src="{% static 'front/logo.jpg' %}">

(2)在项目下新建文件夹static,再新建和APP同名的文件夹,把该APP用到的静态文件,全放在这里面

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

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

在模板中这样调用:

{% load static %}
<link rel="stylesheet" href="{% static 'index.css' %}" rel="external nofollow" rel="external nofollow" rel="external nofollow" >

4、如果不想每次在模版中加载静态文件时都使用{% load static %},那么就把static标签变成Django内置标签:

(1)在settings.py中的TEMPLATES/OPTIONS下添加'builtins':['django.templatetags.static']

(2)在模板中就可以直接使用static标签

  <img src="{% static 'front/logo.jpg' %}">
  <link rel="stylesheet" href="{% static 'index.css' %}" rel="external nofollow" rel="external nofollow" rel="external nofollow" >

上面是详解,下面是我喜欢用的配置方式:

1、settings.INSTALLED_APPS下添加:django.contrib.staticfiles

2、settings.py下添加:STATIC_URL = '/static/'

3、settings.py下添加:(此处有的不是用[],而是小括号(),但是会报加载不进来错误)

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

4、在项目下新建文件夹static,再新建和APP同名的文件夹,把该APP用到的静态文件,全放在这里面

5、在settings.py中的TEMPLATES/OPTIONS下添加'builtins':['django.templatetags.static']

6、在模板中使用静态文件

 <img src="{% static 'front/logo.jpg' %}">
  <link rel="stylesheet" href="{% static 'index.css' %}" rel="external nofollow" rel="external nofollow" rel="external nofollow" >

总结

以上所述是小编给大家介绍的详解Django模版中加载静态文件配置方法,希望对大家有所帮助,如果大家有任何疑问欢迎给我留言,小编会及时回复大家的!

相关文章

python画折线图的程序

python画折线图的程序

前做PPT要用到折线图,嫌弃EXCEL自带的看上去不好看,就用python写了一个画折线图的程序。 import matplotlib.pyplot as plt x=[1,2,3...

python基础教程项目三之万能的XML

这个项目的名称与其叫做万能的XML不如叫做自动构建网站,根据一份XML文件,生成对应目录结构的网站,不过只有html还是太过于简单了,如果要是可以连带生成css那就比较强大了。这个有待后...

Python中每次处理一个字符的5种方法

目的 对字符串的每个字符进行处理,其实每个字符(Char)就是一个长度为1的字符串。 方法 1.使用内建函数list() 复制代码 代码如下: >>> A_string...

Python列表删除元素del、pop()和remove()的区别小结

前言 在python列表的元素删除操作中, del, pop(), remove()很容易混淆, 下面对三个语句/方法作出解释 del语句 del语句可以删除任何位置处的列表元素, 若...

使用python编写监听端

本文实例为大家分享了python编写监听端的具体代码,供大家参考,具体内容如下 import socket import time import sys import stri...