与这个7年前的问题相同,但解决方案没有帮助,而且我使用的是django 3,所以在我看来显然不是重复的。
我完全遵循了Django关于静态文件的文档。
设置文件:
STATIC_URL = '/static/'
DEBUG = True
文件夹结构:
---my_project
------my_project
------app1
------static
---------css
------------mystyle.css
模板:
{% load static %}
<link rel="stylesheet" href="{% static "css/mystle.css" %}">
当浏览到该网站时,我得到一个404未找到。链接指向正确的目录:
http://127.0.0.1:8000/static/css/mystyle.css
通过进一步的搜索和查看文档(在我看来不清楚(,我还找到了设置STATIC_ROOT
并进行了相应的设置,但这也没有帮助。
#BASE_DIR = path to project dir
STATIC_ROOT = os.path.join(BASE_DIR, 'static')
我做错了什么?
试着解决这个问题几个小时,然后当你在帖子上点击send时,你就找到了解决方案。对我来说,django文档不清楚,令人困惑,因此我添加了一个答案,而不是删除我的问题。
您的项目可能也会有不绑定的静态资产一个特定的应用程序。除了在您的应用程序,您可以在您的设置文件,Django也将在其中查找静态文件
强调"can"one_answers"also"。这意味着不需要此设置,STATIC_URL就足够了。但事实并非如此。这是绝对必要的,否则你会得到404。
这导致以下设置:
STATIC_URL = '/static/'
STATICFILES_DIRS = [
os.path.join(BASE_DIR, "static"),
]
DEBUG = True
让它发挥作用。