Django没有渲染我的静态文件(css,图像等)



我可以在浏览器中查看我的网站(html),但我的标记都不起作用。我已经检查了我的样式表链接的类型,设置.py,但我在一个迷路。
当我运行我的网站时,我在我的终端上得到以下响应:

[10/Nov/2022 20:46:23] "GET / HTTP/1.1" 200 168
[10/Nov/2022 20:46:23] "GET /static/css/main.css HTTP/1.1" 404 1795
[10/Nov/2022 20:46:23] "GET /static/images/6%2Bcart.png HTTP/1.1" 404 1810`

下面是我的settings.py文件中的代码:

STATIC_URL = 'static/' 
STATICFILES_DIRS = [
os.path.join(BASE_DIR, 'static')
]

在我的html页面中的css链接的例子

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

我已经尝试了所有可能的事情,但无法找到问题,任何和所有的反馈将非常感谢。我不允许张贴图片,所以不幸的是,我不能包括。

我已经重新编码,删除和重新制作了静态文件夹,搜索了互联网,但没有运气。

尝试这个静态文件配置,这对我来说很好。

在settings.py:

STATIC_URL = 'static/'
STATICFILES_DIRS = [os.path.join(BASE_DIR, 'static/')]
STATIC_ROOT = os.path.join(BASE_DIR, 'staticfiles') # for deployment

并添加url .py:

from django.conf.urls.static import static
from django.conf import settings
urlpatterns = [
"""
-----
-----
"""
]

if settings.DEBUG:
urlpatterns += static(settings.STATIC_URL , document_root = settings.STATIC_ROOT)

如果仍然不能工作,你可以在你的urlpatterns中添加下面的代码来强制django提供静态文件。

from django.urls import path, include, re_path
from django.views.static import serve
urlpatterns = [
re_path(r'^static/(?P<path>.*)$', serve, {'document_root':settings.STATIC_ROOT}),
]

而不是:

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

试试这个:

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

相关内容

  • 没有找到相关文章

最新更新