2013-07-30 48 views
3

嗯,我试图通过将Bootstrap文件夹复制并粘贴到静态文件夹来使用Bootstrap和Django。但是我无法访问Bootstrap.css文件。它显示404错误。Django Bootstrap集成

仅用于实验目的,我在static/css文件夹中创建了一个main.css,并将它链接到模板中,令我惊讶的是它的运行。 那么,为什么bootstrap.css文件没有被链接。

这里是我如何我的模板

{% block css %} 
    <link rel="stylesheet" type="text/css" href="/static/css/bootstrap.css"> 
{% endblock %} 

这里连接Bootstrap.css是我的根urls.py

urlpatterns = patterns('', 
          (r'^',include('apps.home.urls')), 
          (r'^static/(?P<path>.*)$', 'django.views.static.serve', {'document_root':os.path.normpath(os.path.join(os.path.dirname(__file__),'../static/'))}), 
    url(r'^admin/', include(admin.site.urls)), 
) + static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT) 

MEDIA_ROOT = 'C:/Users/Praful/uploads'

MEDIA_URL = '/media/'

STATIC_ROOT = ''

STATIC_URL = '/static/'

回答

2

而应该试试这个:

{% load static %} 

{% block css %} 
    <link rel="stylesheet" type="text/css" href="{% static 'css/bootstrap.css ' %}"> 
{% endblock %} 

...,只是确保你在INSTALLED_APPS有 'django.contrib.staticfiles'。请参阅还https://docs.djangoproject.com/en/dev/ref/contrib/staticfiles/#template-tags

(编辑:固定的错字,我oroginally忘了 “静态” 关键字)

OR这样的:

{% block css %} 
    <link rel="stylesheet" type="text/css" href="{{STATIC_URL}}css/bootstrap.css"> 
{% endblock %} 

..assuming “django.core.context_processors.media” 被在你的TEMPLATE_CONTEXT_PROCESSORS

+0

它无法正常工作。你的解决方案的第二部分早些时候由我尝试,但不幸的是,没有工作 – PythonEnthusiast

+0

你的源代码打印了什么? – ppetrid

+0

哎呀,我失去了“静态”部分,请参阅更新回答 – ppetrid

0

好的,这是一个设置和路径问题。

首先,将在您的设置:

PROJECT_PATH = os.path.abspath(os.path.dirname(__name__)) 

MEDIA_ROOT = os.join(PROJECT_PATH, 'uploads') 

MEDIA_URL = '/media/' 

STATIC_ROOT = os.join(PROJECT_PATH, 'static') 

STATIC_URL = '/static/' 

而且,在你的模板

{% block css %} 
    <link rel="stylesheet" type="text/css" href="{{ STATIC_URL }}/css/bootstrap.css"> 
{% endblock %} 
+0

仍然无法正常工作!!!!任何想法 – PythonEnthusiast

+0

你有哪个错误?? – lalo

+0

404错误。页面未找到。 – PythonEnthusiast

0

检查您的项目结构。我按照这个结构:

/Project_name 
    /App1 
    /App2 
    /App3 
    /Project_name 
    /media 
    /static 
    /css 
     bootstrap.min.css 
    /js 
    /templates 

/Requirements 
    requirement.txt 

.gitignore 

lalo显示这种结构和适当的设置和模板文件,引导应该没有404

1

工作看一看在faststart-bootstrap Django项目骨架与引导3支持。不过,它基于LESS样式表,但LESS易于学习(使用中)并与CSS兼容。