django导入多个html文件,Django导入静态文件

在Django中,静态文件如css、js、image等无法直接加载是因为Django仅对路由定义的路径响应。要解决这个问题,需要在settings.py中配置STATICFILES_DIRS,STATIC_ROOT和STATIC_URL。当设置好静态文件目录后,可以使用'{% load static %}'模板标签导入静态文件。详细步骤包括设置STATIC_URL、STATICFILES_DIRS,以及在html中导入静态资源的方法。
摘要由CSDN通过智能技术生成

引言

这个问题出在以Djiango做后台的前端界面上。按以往的习惯,css,js,image等静态文件直接在前端html中写好链接,直接丢上去就可以,但当我把含外部css的html在丢到Django后发现,css并没有载入,自然,其他静态文件也是如此。

最初百度查找解决方案,但很多使用的版本与我的不同,解决方案也有偏差,其他可用的方案也并没有讲清楚(其实就是我没能理解),于是自己去看了文档写下了自己的理解

相关软件及版本:

Django 2.1.3

python 3.7.0

Django文档管理静态文件:

原因分析

出现这个问题其实是因为程序员太想当然了(但一般肯定会觉得直接丢上去没问题的啊混蛋)。在以往的php做后端的例子中,我们只要知道url就可以访问网站根目录下的任何文件。以外部css为例,在浏览器获得html文件后会对资源进行链接,链接css文件时,将向服务器请求css的url对应的css文件,该css文件确实存在,于是服务器将之返回,浏览器成功链接到外部css文件。整个过程十分简单。

那么为什么Django链接不到?原因出在一开始,css对应的url不存在。Django并不像php那样可以访问网站根目录下的文件,它只会对路由所包含的路径进行对应的响应。简单来说,你随便往Django根目录丢给文件,在不编写路由的情况下,是不可能通过url获得的。同样,如果尝试访问没有写进路由的css文件,那么返回只可能是404。既然资源404了,那么浏览器请求不到,导入失败就是理所当然的。

解决方法</

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值