自从我设置django在本地工作以来已经有一段时间了。我正在使用版本1.11
。让它来提供静态文件。
我的项目名为chatsys
,我在此文件夹chatsys\static\css\style.css
中创建了静态文件夹和css。
以下是设置文件中的当前设置。
BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
STATIC_URL = '/static/'
STATIC_ROOT = os.path.join(BASE_DIR, 'static')
并在网址
#for serving static files
from django.conf import settings
from django.conf.urls.static import static
urlpatterns += static(settings.STATIC_URL, document_root=settings.STATIC_ROOT)
最后在html中
{% load static %}
...
<link rel="stylesheet" type="text/css" href="/static/css/style.css">
但是在runserver控制台中,我获得了/static/css/style.css
答案 0 :(得分:5)
您应该定义STATICFILES_DIRS
并在那里包含项目的静态目录。
STATICFILES_DIRS = [os.path.join(BASE_DIR, 'static')]
这些是Django从中收集静态文件的目录。
然后,您应该将STATIC_ROOT
更改为其他目录。它是collectstatic
收集静态文件的目录。静态根目录不应受版本控制。
另外,您在模板中加载静态标记但未使用它。您可以将其更改为:
{% load static %}
...
<link rel="stylesheet" type="text/css" href="{% static 'css/style.css' %}">
答案 1 :(得分:0)
移动基础目录下的静态文件夹