我有以下项目结构:
myproject
- myapp
- manage.py
- myproject
- settings.py
- urls.py
...
- static
- templates
我想在此静态文件夹中提供所有静态文件。在我的 settings.py 中,我有以下内容:
STATIC_URL = '/static/'
但是,在我的一个模板中,当我使用以下命令调用静态文件时...
{% load static %}
...
<link href="{% static 'css/styles.css' %}" rel="stylesheet" />
...没有加载任何内容。
但是,如果我在 myapp/static/css/styles.css 中添加 css 文件,则一切正常。如何从项目根文件夹提供静态文件?感谢您的帮助。
最佳答案
第一步:您的项目结构(文件夹目录)似乎没问题。
myproject
- myapp
- manage.py
- myproject
- settings.py
- urls.py
...
- static
- templates
第二:需要在settings.py文件中定义STATIC_URL = '/static/'
。
第三:需要加载模板文件中的static,并使用相对路径。
{% load static %}
...
<link href="{% static 'css/styles.css' %}" rel="stylesheet" />
添加此settings.py文件。
# Add static file directory
STATICFILES_DIRS = (
os.path.join(BASE_DIR, 'static'),
)
settings.py 中列出的已安装应用程序应该存在于列表中的 django.contrib.staticfiles
中。如果没有,请确保它在列表中。
关于python - 从 Django 中的项目目录提供静态文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59519504/