我知道当 settings.py 中的 Templates 'APP_DIRS' 设置为 True 时,django 将在应用程序中查找模板。但是,就我而言,我想为所有应用程序使用一个 style.css 文件。具体来说,我想将它用于 django-registration . 当我查看代码时
<link rel="stylesheet" href="style.css" />
结果它找不到它,即使在我的 base.html 中我将它设置为:
<link rel="stylesheet" href="{{ STATIC_URL }}style.css" />
所以我希望它能正确找到样式表,我将其放入元素(而非应用程序)/static 的主文件夹中。
我做错了什么?感谢任何帮助,这样我就可以让所有应用程序和外部应用程序(例如 django-registration)访问相同的样式表。
我把
{% load staticfiles %} <!-- at the beginning -->
...
<link href="{% static 'style.css' %}">
a 文件的开头,但样式表仍然没有影响。我怎样才能最好地调试这个问题?
最佳答案
在您的情况下,style.css
需要是一个静态文件,因此它需要位于您的“静态”文件夹中(或者您存储静态文件的任何其他位置,包括在应用程序中)。
您编写的模板不正确。它应该看起来像这样 – base.html:
{% load staticfiles %} <!-- at the beginning -->
...
<link href="{% static 'style.css' %}">
然后,如果您的 django 注册模板使用 {% extends "base.html"%}
从 base.html 初始化,您的 style.css
应该被加载。
关于css - 如何为 django 应用程序设置 css 的路径,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42963096/