• Django使用静态文件


    除了由服务器生成的HTML文件外,网页应用一般需要提供其它必要的文件 —— 比如图片文件、JavaScript脚本和CSS样式表 —— 来为用户呈现出一个完整的网站。 在Django中,我们将这些文件称为“静态文件”。

    对于小型项目,这不是个大问题,因为你可以将它们放在你的网页服务器可以访问到的地方。 然而,在大一点的项目中 —— 尤其是那些由多个应用组成的项目 —— 处理每个应用提供的多个静态文件集合开始变得很难。

    这正是django.contrib.staticfiles的用途:它收集每个应用(和任何你指定的地方)的静态文件到一个单独的位置,这个位置在线上可以很容易维护。

     

    1、新建目录

    根目录下新建文件夹 static 目录结构如下:

    static
    css
    style.css
    images
    1.jpg
    js
    main.js
     

    2、修改Django相关文件

    #setting.py 增加以下配置
    STATIC_URL = '/static/'
    HERE=os.path.dirname(os.path.dirname(__file__))
    STATIC_ROOT =os.path.join( HERE , 'static').replace('\','/')
    STATICFILES_DIRS = (
    ("images", os.path.join(STATIC_ROOT,'images').replace('\','/')),
    ("css", os.path.join(STATIC_ROOT,'css').replace('\','/')),
    ("js", os.path.join(STATIC_ROOT,'js').replace('\','/')),
    )
    #urls.py 增加以下配置
    urlpatterns += static(settings.STATIC_URL, document_root = settings.STATIC_ROOT )
     

    3、调用静态文件

    {% load staticfiles %} #必须
    <link rel="stylesheet" type="text/css" href="{% static 'css/main.css' %}" />
    <script src="{% static 'js/main.js' %}" type="text/javascript"></script>
    <img src="{% static 'images/1.jpg' %}" width="100px">
  • 相关阅读:
    alpha冲刺—Day8
    alpha冲刺—Day7
    alpha冲刺—冲刺计划&代码规范
    Linux安装jdk
    chrome插件开发-notification API注意事项
    VSCode远程连接Docker
    Idea发布项目到Docker
    开发环境配置
    Java设计模式之《单例模式》及应用场景
    使用Docker安装jenkins
  • 原文地址:https://www.cnblogs.com/leedaily/p/8287000.html
Copyright © 2020-2023  润新知