自从我将django设置为在本地工作以来已经有一段时间了。我正在使用version 1.11。获取它来提供静态文件。调用了我的项目chatsys,并在此文件夹中创建了静态文件夹和CSS chatsys\static\css\style.css。
这是设置文件中的当前设置。
BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
STATIC_URL = '/static/'
STATIC_ROOT = os.path.join(BASE_DIR, 'static')
Run Code Online (Sandbox Code Playgroud)
并在网址中
#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)
Run Code Online (Sandbox Code Playgroud)
最后在html中
{% load static %}
...
<link rel="stylesheet" type="text/css" href="/static/css/style.css">
Run Code Online (Sandbox Code Playgroud)
但是在运行服务器控制台中,我得到404 /static/css/style.css
您应该在其中定义STATICFILES_DIRS并包括项目的静态目录。
STATICFILES_DIRS = [os.path.join(BASE_DIR, 'static')]
Run Code Online (Sandbox Code Playgroud)
这些是Django从中收集静态文件的目录。
然后,您应该更改STATIC_ROOT为其他目录。它是将collectstatic静态文件收集到的目录。静态根目录不应受版本控制。
顺便说一句,您正在将静态标签加载到模板中,但未使用它。您可以将其更改为:
{% load static %}
...
<link rel="stylesheet" type="text/css" href="{% static 'css/style.css' %}">
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2519 次 |
| 最近记录: |