1、首先在APP目录下创建一个static文件夹
如图:
# Application definition INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'appBook.apps.AppbookConfig', ]
2、在settings.py中 最底部添加如下:
# Static files (CSS, JavaScript, Images)
# https://docs.djangoproject.com/en/1.11/howto/static-files/ STATIC_URL = '/static/'
STATIC_ROOT=(
os.path.join(BASE_DIR,"appBook/static"),
)
3、在html页面头部添加:
{% load staticfiles %} <!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<link rel="stylesheet" href="{% static 'bootstrap/css/bootstrap.css' %}">
<style>
.container{
margin-top: 80px;
}
</style>
</head>
<body>
4、在html模版页面,可以用如下方式调用:
<img src="{% static 'images/logo.gif' %}" alt=""/>
<img src="/static/images/acer.gif" alt=""/>
推荐使用第二种,因为如果图片名称是动态的,可以通过views这么绑定:
<img src="/static/images/{{name}}.gif" alt=""/>
css的引用同样如此:
<link rel="stylesheet" href="{% static ‘style/base.css’ %}" type="text/css">
<link rel="stylesheet" href="/static/style/base.css" type="text/css">
js的引用同样如此:
<script type="text/javascript" src="{% static ‘js/jquery-1.8.3.min.js' %}"/>
<script type="text/javascript" src="/static/js/jquery-1.8.3.min.js"/>
可以用 python manage.py findstatic css/index.css 寻找 css
Django:locals()小技巧
locals()返回一个包含当前作用域里面的所有变量和它们的值的字典。
所以可以把views改写为
def
current_datetime(request):
current_date
=
datetime.datetime.now()
return
render_to_response(
'current_datetime.html'
,
locals
())
这里要注意的是要把now重命名为current_date,因为模板需要的是这个变量名。
在template是如下定义的:
<html>
<body>
<font color = "blue">It is is now {{ current_date }}.</font>
</body>
</html>