我正在尝试为我的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" %}" />
如何在我的Web应用程序中正确实现CSS?我是否必须在url.py中添加一些内容?还是使用STATIC_ROOT或STATICFILES_DIRS在settings.py中?
我正在使用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文件中,但仍然无法正常工作。
先谢谢了!
最佳答案
您需要将您的应用添加到INSTALLED_APPS
元组。另外,添加urlpatterns
以便通过本地开发服务器提供静态文件,如mastazi所说:
urlpatterns = [
# ... the rest of your URLconf goes here ...
] + static(settings.STATIC_URL, document_root=settings.STATIC_ROOT)
您的应用命名为
MyTeachingApp
您的INSTALLED APPS
配置应如下所示:INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'MyTeachingApp',
]
关于python - 在Django中实现CSS,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/34427618/