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

yipeiwu_com7年前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模版中加载静态文件配置方法,希望对大家有所帮助,如果大家有任何疑问欢迎给我留言,小编会及时回复大家的!

相关文章

Python3.5迭代器与生成器用法实例分析

Python3.5迭代器与生成器用法实例分析

本文实例讲述了Python3.5迭代器与生成器用法。分享给大家供大家参考,具体如下: 1、列表生成式 通过列表生成式可以直接创建一个列表。代码:a = [i*2 for i in ran...

详解用Python为直方图绘制拟合曲线的两种方法

详解用Python为直方图绘制拟合曲线的两种方法

直方图是用于展示数据的分组分布状态的一种图形,用矩形的宽度和高度表示频数分布,通过直方图,用户可以很直观的看出数据分布的形状、中心位置以及数据的离散程度等。 在python中一般采用m...

Python3.6简单的操作Mysql数据库的三个实例

安装pymysql 参考:https://github.com/PyMySQL/PyMySQL/ pip install pymsql 实例一 import pymysql # 创建...

python 动态生成变量名以及动态获取变量的变量名方法

python 动态生成变量名以及动态获取变量的变量名方法

前言 需求: 必须现在需要动态创建16个list,每个list的名字不一样,但是是有规律可循,比如第一个list的名字叫: arriage_list_0=[],第二个叫arriage_...

Python中判断子串存在的性能比较及分析总结

起步 对于子串搜索,Python提供了多种实现方式:in, find, index, __contains__,对其进行性能比较: import timeit def in_(s...