我在Django有一个网页,现在我想添加一些CSS(twitter bootstrap)。这是我第一次尝试。我仔细阅读了docs,并为django开发服务器做了一切工作。我使用的开发服务器与debug = True和django版本1.6.5。我的settings.py看起来像这样:
STATIC_URL = '/static/'
STATIC_ROOT = os.path.join(BASE_DIR, "static")
INSTALLED_APPS = (
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
)
我的文件位于/mysite/static/bootstrap/css
文件夹下,在我的template.html中,我有:
{% load staticfiles %}
<link href="{% static "boostrap/css/bootstrap.css" %}" rel="stylesheet" media="screen">
不幸的是,没有任何反应,我看到开发服务器说:
"GET /static/boostrap/css/bootstrap.css HTTP/1.1" 500 59
这意味着找不到它们。我甚至尝试在没有STATIC_ROOT的情况下进行设置,这样做:
STATICFILES_DIRS = (
os.path.join(BASE_DIR, "static"),
'/static/',
)
但随后开发服务器返回:
"GET /static/boostrap/css/bootstrap.css HTTP/1.1" 404 1682
任何帮助表示感谢。
答案 0 :(得分:3)
你做的一切都正确,这里的问题是一个简单的错字。
您的静态文件位于boo t 表带
中但是,在你的html中,你写道:{%static&#34; boostrap /css/bootstrap.css" %}
T 缺失。
以下代码可以使用:
{% load staticfiles %}
<link href="{% static "bootstrap/css/bootstrap.css" %}" rel="stylesheet" media="screen">
答案 1 :(得分:-1)
我多次发现这个问题,每次问题都通过将URL添加到STATIC_URL来解决,即
STATIC_URL = 'http://localhost:8000/static/'
答案 2 :(得分:-1)
您必须将STATIC文件加载到项目应用程序文件夹中。
---&GT;如果您的项目名称为myblog
。您会在myblog
中找到另一个名为myblog
的文件夹,您必须将static
文件夹放在那里。
---&GT;在setting.py中,您必须添加:
STATICFILES_DIRS = ( os.path.join(BASE_DIR, 'myblog/static'), )
在生产模式下,如果收集静态,静态文件将被复制到root static。