首页 > 代码库 > Django基础,Day9 - 静态文件目录与路径设置说明(eg. images, JavaScript, CSS)

Django基础,Day9 - 静态文件目录与路径设置说明(eg. images, JavaScript, CSS)

静态文件路径设置官方说明

1. Make sure that django.contrib.staticfiles is included in your INSTALLED_APPS.

2. In your settings file, define STATIC_URL, for example:   

STATIC_URL = ‘/static/‘

3. Store your static files in a folder called static in your app. For example my_app/static/my_app/myimage.jpg.

4. In your templates, either hardcode the url like /static/my_app/myexample.jpg or, preferably, use the static template tag to build the URL for the given relative path by using the configured STATICFILES_STORAGE storage (this makes it much easier when you want to switch to a content delivery network (CDN) for serving static files).

{% load staticfiles %}

<img src="http://www.mamicode.com/{% static"my_app/myexample.jpg" %}" alt="My image"/>

 使用实例

在前面的例子中,我们使用了上面第三种设置方式,在app目录下,创建了static目录,里面还创建了名字跟app名称一样的目录,里面才放静态资源文件,路径如:

polls/static/polls/style.css,在template中引入时使用

{% load static %}

<link rel="stylesheet" type="text/css" href="http://www.mamicode.com/{% static ‘polls/style.css‘ %}" />

一、Django 项目默认读取静态文件目录如 /projectName/appName/static/

二、如果我们不想将静态文件放到app甚至project目录下时,可以在settings.py 中设置 STATICFILES_DIRS ,如:

STATICFILES_DIRS = (
    ‘D://static/‘,
    # os.path.join(BASE_DIR, "static"),
    # ‘/var/www/static/‘,
)

接着前面的例子,此时创建 D://static/polls/style.css

li a {
    color: red;
}

body {
    background: white url("images/background.jpg") no-repeat center Top;
}

刷新页面 则可发现,链接中的文字颜色由原先的绿色变成了红色,说明页面引用的css路径生效

技术分享

 

Django基础,Day9 - 静态文件目录与路径设置说明(eg. images, JavaScript, CSS)