3

好吧,我正在尝试通过将文件夹从 Bootstrap 复制并粘贴到静态文件夹来将 Bootstrap 与 Django 一起使用。但我无法访问 Bootstrap.css 文件。它显示404错误。

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

这是我在模板中链接 Bootstrap.css 的方式

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

这是我的根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/'

4

4 回答 4

2

你应该试试这个:

{% load static %}

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

...并确保您的INSTALLED_APPS. 另请参阅https://docs.djangoproject.com/en/dev/ref/contrib/staticfiles/#template-tags

(编辑:修正错字,我最初忘记了“静态”关键字)

或这个:

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

..假设“django.core.context_processors.media”在你的TEMPLATE_CONTEXT_PROCESSORS

于 2013-07-30T21:51:56.840 回答
1

查看支持 Bootstrap 3的faststart-bootstrap Django 项目框架。然而,它基于LESS样式表,但 LESS 易于学习(使用中)并且与 CSS 兼容。

于 2013-10-29T17:54:31.497 回答
0

Check your project structure. I follow this structure:

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

/Requirements
  requirement.txt

.gitignore

With this structure and a proper settings and template files shown by lalo, bootstrap should be work without 404.

于 2013-10-28T06:35:53.953 回答
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 %}
于 2013-07-30T21:54:58.807 回答