oldbee0925 2024-01-17 17:37 采纳率: 91.4%
浏览 11

django后台web模板与前端渲染的html加载css静态文件路径出错

我的后台是django,找了一个现成的bootstrap模板,后台模板没做任何修改,没有使用{% load static %}之类的静态文件路径引用,用的是django内置的web服务器,debug模式。
静态目录这样配置:

STATIC_URL = '/assets/'

后台模板的css导入是这样写的:

    <!-- Bootstrap Css -->
    <link href="/assets/css/bootstrap.min.css" id="bootstrap-style" rel="stylesheet" type="text/css" />

前端显示不正常。查看chrome开发者工具的elements,前端渲染的html无端变成了这样:

    <!-- Bootstrap Css -->
    <link href="assets/css/bootstrap.min.css" id="bootstrap-style" rel="stylesheet" type="text/css" />

链接开头的/不见了,导致路径变为相对路径,加载不了css。
奇怪的是同一批加载的css只有某几个出现这个问题,报错:
single_stock_overview/:1 Refused to apply style from 'http://127.0.0.1:8000/single_stock_overview/assets/css/bootstrap.min.css' because its MIME type ('text/html') is not a supported stylesheet MIME type, and strict MIME checking is enabled.
请教了gpt一个礼拜,头被绕晕了也没解决问题,求解!

  • 写回答

1条回答 默认 最新

  • 叫兽-郭老师 Java领域新星创作者 2024-01-17 17:39
    关注

    要解决这个问题,你需要确保你的静态文件设置正确,并且HTML模板中的静态链接是正确的。以下是一些可能的解决方案:

    在你的Django设置中,添加以下设置(取决于你的静态文件的实际位置)

    STATICFILES_DIRS = [
        BASE_DIR / "static",
    ]
    
    

    然后,你需要使用Django的{% load static %}和{% static "path/to/your/staticfile" %}在HTML文件中加载静态文件。例如:

    {% load static %}
    ...
    <link href="{% static 'css/bootstrap.min.css' %}" id="bootstrap-style" rel="stylesheet" type="text/css" />
    
    
    

    有时,只需要将HTML模板中的'/'更改为'./'即可。

    如果这些都不能解决你的问题,建议你查看Django的错误日志

    评论

报告相同问题?

问题事件

  • 创建了问题 1月17日

悬赏问题

  • ¥15 依据报错在原代吗格式的基础上解决问题
  • ¥15 在虚拟机中安装flash code
  • ¥15 单片机stm32f10x编写光敏电阻调节3.3伏大功率灯亮度(光强越大灯越暗,白天正常光强灯不亮,使用ADC,PWM等模块)望各位找一下错误或者提供一个可实现功能的代码
  • ¥20 verilog状态机方法流水灯
  • ¥15 pandas代码实现不了意图
  • ¥15 GD32H7 从存储器到外设SPI传输数据无法重复启用DMA
  • ¥25 LT码在高斯信道下的误码率仿真
  • ¥45 渲染完成之后将物体的材质贴图改变,自动化进行这个操作
  • ¥15 yolov5目标检测并显示目标出现的时间或视频帧
  • ¥15 电视版的优酷可以设置电影连续播放吗?