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>