• 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 %}

    下面是实验效果

  • 相关阅读:
    关于HDFS默认block块大小
    从计算框架MapReduce看Hadoop1.0和2.0的区别
    Linux的作业管理
    php 随机密码和盐 来自wordpress
    SSH管理(重启 停止 运行 安装)centos7
    卸载iptables 小心了!!怎么关闭和卸载iptables
    mysqld: Out of memory 解决办法(mysql)
    ie6 ie7 ie8 ie9兼容问题终极解决方案
    call_user_func()的参数不能为引用传递 自定义替代方法
    centos 域名硬解析(linux)
  • 原文地址:https://www.cnblogs.com/zhaopengcheng/p/5509839.html
Copyright © 2020-2023  润新知