我无法让Django为我的html模板加载我的CSS。我知道有很多这样的帖子,比如here和here,但是我不知道还有什么可以做,因为我已经尝试了其中的几种解决方案无济于事。
使用python manage.py runserver
加载我的网站会返回此日志:
[31/Jul/2016 01:58:29] "GET / HTTP/1.1" 200 1703
[31/Jul/2016 01:58:29] "GET /static/css/about.css HTTP/1.1" 404 1766
我不确定日志第二行末尾的404是否指向404错误。
我尝试将静态文件添加到urls.py
:
urlpatterns = [
url(r'^admin/', admin.site.urls),
url(r'^$', TemplateView.as_view(template_name='about.html'))
]
urlpatterns += staticfiles_urlpatterns()
我尝试修改settings.py
:
STATIC_ROOT = ''
STATIC_URL = '/static/'
STATICFILES_DIR = os.path.dirname(os.path.abspath(__file__)) + "/static/"
STATICFILES_FINDERS = (
'django.contrib.staticfiles.finders.FileSystemFinder',
'django.contrib.staticfiles.finders.AppDirectoriesFinder'
)
我当然在实际模板中使用了正确的加载方法:
{% load staticfiles %}
...
<link rel="stylesheet" href="{% static 'css/about.css' %}">
这是我的文件结构:
Personal_Website
|Personal_Website
||settings.py
||urls.py
||etc...
|static
||css
|||about.css
坦率地说,我不知道还能在这做什么。我觉得我已经尝试了所有设置,但我仍然得到相同的日志。
答案 0 :(得分:2)
您应该在项目目录中提供静态文件...
STATICFILES_DIRS = [os.path.join(BASE_DIR, "static"),]
os.path.dirname(os.path.abspath(__file__))
这是指向Personal_Website文件夹,其中所有文件的设置都在那里......