在最新版本的 Django 5.0.1 中,我无法使用 Static 文件夹中的文件。设置正确,可能和模板文件夹有冲突?

问题描述 投票:0回答:1

在最新版本的

Django 5.0.1
中,我在使用 Static 文件夹中包含的 css 和 js 时遇到问题。我已经读过几个类似的问题(小心,它们很旧),我也阅读了 Django 官方文档,但没有一个能够帮助我。

我的代码似乎设置正确,但不起作用。这意味着也许问题出在别的地方,也许与

template
文件夹有冲突(稍后解释)。

静态文件夹位于此路径中

App1/static
。所以我想使用的CSS位于
App1/static/css/style.css
。我只需要它用于
Development
模式

所以我正在使用:

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

问题: 当我打开网页时,CSS 不适用。此外,如果我尝试单击 css 上方的链接,我会收到一个笑话,上面写着

"It was not possible to open 'style.css' %}
并要求我创建文件。将创建的文件的路径将为
App1 > templates > {% static 'css > style.css' %}
。为什么在模板中?

我的设置是

索引.HTML 我在 index.html 的开头使用 {% load static %}

我向您展示我尝试的两种解决方案:


尝试 N.1

在settings.py中我使用:

BASE_DIR = Path(__file__).resolve().parent.parent
STATIC_URL = '/static/'
STATICFILES_DIRS = (
   os.path.join(BASE_DIR, 'static'),)

在 Installed_Apps 中,除其他外,还有“django.contrib.staticfiles”。

TEMPLATES
我有
"DIRS": []


尝试 N.2

settings.py
我正在使用:

BASE_DIR = Path(__file__).resolve().parent.parent
STATIC_URL = '/static/'
STATIC_ROOT = os.path.join(BASE_DIR, 'static')

在 Installed_Apps 中,除其他外,还有“django.contrib.staticfiles”

TEMPLATES
我有
"DIRS": []

Urls.py
我正在使用:

urlpatterns = [
     path('', views.index, name='index'),
     path('function_comparison/', views.function_comparison,name="function_comparison"),
] + static(settings.STATIC_URL, document_root=settings.STATIC_ROOT)
python python-3.x django django-rest-framework django-templates
1个回答
0
投票

您需要将App1添加到

INSTALLED_APPS
中的
settings.py
::

INSTALLED_APPS = [
    ... other apps ...
    'App1',
]
© www.soinside.com 2019 - 2024. All rights reserved.