0

我已经尝试了我所知道的一切来解决这个问题,除了 css 之外,所有静态文件都可以正常工作

视图.py

from django.http.response import HttpResponse
from django.shortcuts import render

def index(response):
    return render(response , "main/index.html")



html头

{% extends 'main/base.html' %}
{% load static %}
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <link rel="stylesheet" href= "{%static "main/css/index.css" %}">

    <title> Home Page   </title>
</head>

请注意,如果这会影响任何东西,我会在基本文件中使用引导程序

设置.py


STATIC_URL = '/static/'

STATIC_ROOT = "/Users/aryankaushik/Desktop/visual studio code /django/assets"


STATICFILES_DIRS = [
    BASE_DIR / "static",
]



项目目录

├── admin.py
├── apps.py
├── migrations
│   ├── __init__.py
│   └── __pycache__
│       └── __init__.cpython-39.pyc
├── models.py
├── static
│   └── main
│       ├── css
│       │   ├── base.css
│       │   └── index.css
│       ├── img
│       │   ├── electronics.jpeg
│       │   ├── furniture.jpeg
│       │   └── nature.jpeg
│       └── js
│           └── index.js
├── templates
│   └── main
│       ├── base.html
│       ├── contact.html
│       └── index.html
├── tests.py
├── urls.py
└── views.py

我确信文件夹路径正确,因为图像渲染正确..

先感谢您

4

5 回答 5

0

在 setting.py 中配置它

STATIC_URL = '/static/'

STATICFILES_DIRS = [
    BASE_DIR / "static",

]

如果这不起作用,请清除您的浏览器历史记录静态文件,我认为 ‍</p>

于 2021-12-17T17:35:15.563 回答
0

在您的 settings.py 上,您可以将它们动态放置在您的任何项目中

STATIC_URL = "/static/"
STATIC_ROOT = os.path.join(BASE_DIR, "staticfiles")

MEDIA_URL = "/media/"
MEDIA_ROOT = os.path.join(BASE_DIR, "media")

STATICFILES_DIRS = (os.path.join(BASE_DIR, "static"),)

您在 html 上的版本:错误

<link rel="stylesheet" href= "{%static "main/css/index.css" %}">

真实版本:

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

不要使用类似的引号它不起作用

于 2021-12-17T11:37:51.183 回答
0
Bro try adding these:

Setting.py:

BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
STA_DIR = os.path.join(BASE_DIR,'static')
STATIC_URL = '/static/'

STATICFILES_DIRS = [
    STA_DIR,
]


Urls.py:

urlpatterns = [
    path('',views.index3,name='index'),
]

View.py:

def index3(request):
    my_dict ={'insert_me':'hello i m views.py and now i m under template/firstone'} 
    return render(request,'firstone/index.html',context=my_dict) 

Index.html:

    <title>Document</title>
    <link rel="stylesheet" href="{% static "css/style.css" %}">
</head>
<body>
    <h1>Hello there Index.HTML here</h1>
    <!-- {{insert_me}} -->
    <img src="{% static "images/kami.jpeg" %}" alt="oh no">
于 2021-12-17T11:34:10.933 回答
0
Try it.

settings.py

STATIC_URL = '/static/'
STATIC_ROOT = BASE_DIR / 'static'
STATICFILES_DIRS = [
    BASE_DIR / 'project/static'
]

MEDIA_ROOT = BASE_DIR / 'media'
MEDIA_URL = '/media/'

views.py

def index(request):
    dict = {'test':'test2'}
    return render(request , "main/index.html", context=dict)

index.html

{% extends 'base.html' %}

{% load static %}

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <link rel="stylesheet" href= "{% static 'index.css' %}">

    <title>Index.html</title>
</head>


urls.py

urlpatterns = [
    path('',views.index,name='index'),
]
于 2021-12-17T13:26:19.610 回答
0

尝试以隐身模式运行网站。

于 2021-12-17T17:57:01.123 回答