一般我们构建Django项目时,能够根据项目的不同应用创建不同的子app,假设有多个,而所有的页面均放在templates文件夹下面,所有的js和CSS文件都放在static文件夹下面,目录结构如下所示:
因为按照上图中的描述,引用的静态文件需要需要跨级访问static下js中的jquery文件,所以这里就是我们项目中常见的引用方式:
首先在跟项目的setting.py文件中加入如下代码:
BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__))) #如果有就不需要加了
STATIC_URL = '/static/' #一般已经存在此配置
STATIC_ROOT = os.path.join(BASE_DIR, 'collected_static')
STATICFILES_DIRS = (
os.path.join(BASE_DIR, "static"), #此处的static就是静态文件的父文件夹,可改变
)
当然可能还需要引入import os。
做完上面的步骤,就剩最后一步了,就是在html中使用上面的静态文件,那就比较简单了,直接使用如下配置就好:
<script type="text/javascript" src="/static/js/jquery-3.2.1.js"></script>
PS:因为自己在搞这个时候在网上找好多资源博客,都没有成功,所以最后综合几篇博客,才得以成功,特此记录。上面的情况仅限于开发阶段,如果部署阶段,则需要不同的配置,下篇会介绍。