【问题标题】:Django won't resolve path to static file inside VS Code editorDjango 不会在 VS Code 编辑器中解析静态文件的路径
【发布时间】:2021-07-04 16:53:11
【问题描述】:

我的 html 文件顶部的 {% load static %} 标记似乎有效

但是当我尝试使用此代码从静态文件夹链接我的 css 文件时:

{% load static %}

<link href="{% static 'static/style.css' %}" rel="stylesheet">

vscode 尝试在我的模板目录中创建一个名为 {% static 'static/style.css' %} 的文件,这意味着无法识别 static 关键字。

任何帮助找出原因将受到高度赞赏(底部路径截图)

这是我用于链接静态文件的相关 settings.py

    INSTALLED_APPS = [
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',

    STATIC_URL = '/static/'

    STATICFILES_DIRS = [
    BASE_DIR / "static",
     '/Google_Solutions/static/',
    ]

我的静态和模板在主目录中

这是我试图包含文件的 home.html 文件头

{% extends 'layout.html' %}
{% load static %}
{% block head %}
<meta charset="utf-8">
  <meta content="width=device-width, initial-scale=1.0" name="viewport">
  <title> Homepage </title> 



<!-- Template Main CSS File -->
{% load static %}
<link href="{% static 'css/style.css' %}" rel="stylesheet">
{% endblock %}

这是我的 layout.html

{% load static %}

<!DOCTYPE html>
<html lang="en">
    <head>
              <meta charset="utf-8">
              <link rel="icon" type="image/png" sizes="16x16" href="{% static '/favicon-16x16.png'%}">
              
              <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.0.0-beta2/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-BmbxuPwQa2lc/FVzBcNJ7UAyJxM6wuqIj61tLrc4wSX0szH/Ev+nYRRuWlolflfl" crossorigin="anonymous">
              <script src="https://cdn.jsdelivr.net/npm/bootstrap@5.0.0-beta2/dist/js/bootstrap.bundle.min.js" integrity="sha384-b5kHyXgcpbZJO/tY9Ul7kGkf1S0CWuKcCD38l8YkeH8z8QjE0GmW1gYU5S9FOnJ0" crossorigin="anonymous"></script>

              <link rel="preconnect" href="https://fonts.gstatic.com">
              <link href="https://fonts.googleapis.com/css2?family=Dancing+Script:wght@700&display=swap" rel="stylesheet"> 
              <link href="https://fonts.googleapis.com/css2?family=Lobster&display=swap" rel="stylesheet">
              <link href="https://fonts.googleapis.com/css2?family=Montserrat:wght@300&display=swap" rel="stylesheet">  
    {% block head %}

    {% endblock %}
</head>
<body>
    {% block body %}

    {% endblock %}
</body>
  
<script type="text/javascript" src="{% static 'js/app.js' %}"></script> 

【问题讨论】:

  • screenshot of the path 请不要发布文字截图,使用文字。
  • link href="assets/vendor - 为什么这些文件不是通过static 模板标签链接的? it tries to create a file - 完全不清楚。请详细说明这是什么意思。谁试图“创建文件”,在哪里,如何。硬盘上有新文件?
  • href='{%static "/manifest.json" %}' - 修正模板标签的拼写,在 % 和 static 之间添加空格,统一单引号和双引号的使用,去除不必要的前导斜杠。
  • 那么你的静态文件在哪里?在static/style.csscss/style.css 内部或styles.min.css 等静态文件夹的根目录中?
  • static/styles.css 即它位于我的主项目文件夹的静态目录中。我将编辑我的代码以相应地反映这一点

标签: html django django-templates django-staticfiles


【解决方案1】:

所以我发现了错误,这只是我本地的 vscode

即使悬停链接显示错误的地址,只要您的语法正确,您的静态文件也能正常加载。通过启动服务器来检查它

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-05-26
    • 1970-01-01
    • 2020-01-15
    • 2020-12-15
    • 2021-03-31
    • 1970-01-01
    • 2014-07-11
    相关资源
    最近更新 更多