• django1.8中如何显示图片,应用css样式,javascript事件


    在django中将图片、javascript、css称为静态文件。如何将这些静态文件显示在django中呢?近期做一个项目,一直困扰着我,后来查找各种资源,终于在官方文档中找到。

    官方文档链接

    在setting.py文件中进行修改

     1INSTALLED_APPS 中要有 django.contrib.staticfiles 

    2要设置静态文件查找目录

     STATIC_URL = '/static/'

    或者:

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

    3在模版template中,使用静态文件连接时要么硬编码,例如:“/static/img/myexample.jpg”

    注意:静态文件需要放STATICFILES_DIRS声明的文件夹里。比如我的目录结构如下

    要么使用static模版标签,例如:

    {% load static %}
    <img src="{% static "img/myexample.jpg" %}" alt="My image"/>

    4存储静态文件在静态文件目录中

    要么在每个app目录下,新建一个static文件夹,把静态文件放到其中。例如:在app1包里有static/img/myexample.jpg与之相关的设置就是在setting.py文件中设置

     STATIC_URL = '/static/'

    要么将所有的静态文件放到一个公共的地方,方便对其管理和共享。例如:在manage.py同级目录下新建一个static文件夹,在这个文件夹下在建一个img文件夹,里面有myexample.jpg文件。在与之相关的设置是

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

    django系统会首先在STATICFILES_DIRS中查找所需的静态文件,然后在STATIC_URL中查找,如果有同名的文件,会返回第一个找到的文件。

    二、我的一个例子:

    setting.py文件下

    STATIC_URL = '/static/'
    STATICFILES_DIRS = (
            os.path.join(BASE_DIR,'static'),
    )

    static文件结构如下

    在template文件中有如下片段:

    {% block content %}
    <div>
    {% load static %}
    <p>
    <a href="/app1/index/"><img src="{% static "img/success1.jpg" %}" alt="My image" height="600px" width=auto/></a>
    </p>
    </div>
    {% endblock %}

    下面是实验效果

  • 相关阅读:
    关于禁用发布可能出现的问题处理
    SQL Server数据库的整理优化的基本过程(一)
    分享SQL2005分区实现教程
    Oracle数据库的测试用户Scott的密码为什么是Tiger?
    这就是传说中的搜狗浏览器2.0
    IE6,IE7下双倍边距续
    IE7下fload:left造成双倍边距BUG
    as2和as3之间交互
    倒计时效果
    js拖动层效果
  • 原文地址:https://www.cnblogs.com/zhaopengcheng/p/5509839.html
Copyright © 2020-2023  润新知