组团学

模板静态文件

阅读 (189451)

一、说明

网站通常需要提供其他文件,如图片,JavaScript或CSS。在Django中,我们将这些文件称为静态文件

Django提供 django.contrib.staticfiles来帮助你管理它们

二、作用

管理静态文件(例如图像,JavaScript,CSS,字体,图片)

三、目录结构

project/ App/ templates/ static/ css/ js/ img/

四、配置静态文件

  • INSTALLED_APPS存在django.contrib.staticfiles

  • 在您的设置文件中,定义STATIC_URL

    STATIC_URL = '/static/'
  • 在您的模板中可以用硬编码url的方式 /static/my_app/example.jpg 但是最好使用static模板标签通过使用配置的STATICFILES_STORAGE存储来构建给定相对路径的URL (当您想要切换到内容交付网络(CDN)时,用于提供静态文件)

  • 使用

    注意:目录static在App应用目录下 则以上默认配置没问题

    加载标签(加载标签选择任意一个即可 需写在模板第一行)

    • {% load static from staticfiles %}
    • {% load staticfiles %}
    • {% load static %}
    {% load static %} 采用软连接或者硬链接的方式 <img src="{% static 'img/img.gif' %}" alt=""> <img src="/static/img/img.gif" alt="">

五、注意

您的项目可能还会有不与特定应用绑定的静态资产

除了static/在应用程序中使用目录之外,您还可以STATICFILES_DIRS在设置文件中定义一个目录列表

配置settings.py

STATIC_URL = '/static/' STATICFILES_DIRS = [ os.path.join(BASE_DIR,'static') ]
需要 登录 才可以提问哦