【发布时间】:2022-02-09 20:09:29
【问题描述】:
我正在尝试为我的 python 网络应用程序实现一个简单的 CSS 文件。当我尝试加载应用程序时,我在命令提示符中收到一条错误消息:
"GET /static/css/default.css HTTP/1.1" 404 1658
当然,HTML 页面没有实现任何 CSS。我的项目结构是:
ProjectName
MyApp
MyTeachingApp
static
css
default.css
templates
page.html
在我的settings.py 中,我得到了:
BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
]
STATIC_URL = '/static/'
在 html 中,我得到了头部内的链接标签,例如:
<link rel="stylesheet" href="{% static "css/default.css" %}" />
如何在我的网络应用中正确实现 CSS?我需要向url.py 添加一些内容吗?还是在settings.py 中使用STATIC_ROOT 或STATICFILES_DIRS?
我正在使用 Django 1.9。
我的urls.py 文件包含以下代码:
from django.conf.urls import url, include
from django.contrib import admin
from django.views import *
from django.conf import settings
from django.conf.urls.static import static
urlpatterns = [
url(r'^admin/', admin.site.urls),
url(r'^caesarTemp/', include('TeachingTool.urls')),
] + static(settings.STATIC_URL, document_root = settings.STATIC_ROOT)
这是MyApp 文件夹中的urls.py。
我在 MyTeachingApp 文件夹中有一个额外的 urls.py 文件,其中包含:
from django.conf.urls import url
from . import views
urlpatterns = [
url(r'^$', views.printAlphabet, name = 'print'),
]
我尝试将静态语句添加到这个 urls.py 文件中,但仍然没有工作。
【问题讨论】: