引导文件 404 Django

Posted

技术标签:

【中文标题】引导文件 404 Django【英文标题】:Bootstrap files 404 Django 【发布时间】:2013-09-12 19:59:06 【问题描述】:

在 FireBug 上我收到这些错误

    GET http://localhost:8000/static/bootstrap/css/bootstrap.min.css 404 (NOT FOUND) localhost/:7
    GET http://localhost:8000/static/bootstrap/js/bootstrap.min.js 404 (NOT FOUND) localhost/:8
    GET http://localhost:8000/static/bootstrap/css/bootstrap.min.css 404 (NOT FOUND) 

我的 STATIC_ROOT 是:

    STATIC_ROOT = '/home/bradford/Development/Django/public_pictures/static'

我将引导文件放在“静态”目录中。这个“静态”目录位于我的名为“public_pictures”的项目中。我不确定为什么找不到这些文件

这是我的 html 文件:

    <!DOCTYPE html>
    % load staticfiles %

    <head>

    <link rel="stylesheet" href="% static "bootstrap/css/bootstrap.min.css" %" type="text/css" media="screen" /> 
    <script type="text/javascript" src="% static "bootstrap/js/bootstrap.min.js" %" ></script>

    </head>

    <html>
    <body>

    <span class="badge badge-success" >HI!</span>
    <span class="badge">1</span>
    <span class="badge badge-warning">4</span>
    <span class="badge badge-important">6</span>
    <span class="badge badge-info">8</span>
    <span class="badge badge-inverse">10</span>

    </body>
    </html>

因此,这些引导标记仅显示常规文本。

感谢您的任何意见!

******编辑*************

所以现在我在 settings.py 中的 STATICFILES_DIRS 是

    STATICFILES_DIR = ('/home/bradford/Development/Django/public_pictures/static',)

    STATIC_ROOT = '', # blank

    STATIC_URL = '/static/'

    DEBUG = True

urls.py:

    from django.conf.urls import include, url, patterns

    urlpatterns = patterns('',
        url(r'homepage/',include('homepage.urls', namespace = "homepage")),
        )

index.html(模板)

    <!DOCTYPE html>
    % load staticfiles %


    <head>

    <link rel="stylesheet" href="% static "bootstrap/css/bootstrap.min.css" %" type="text/css" media="screen" /> 
    <script type="text/javascript" src="% static "bootstrap/js/bootstrap.min.js" %" ></script>

    </head>

    <html>
    <body>

    <span class="badge badge-success" >HI!</span>
    <span class="badge">1</span>
    <span class="badge badge-warning">4</span>
    <span class="badge badge-important">6</span>
    <span class="badge badge-info">8</span>
    <span class="badge badge-inverse">10</span>

    </body>
    </html>

所有这些变化让我离目标更近了一点。但是,会显示引导程序的标记,但没有显示颜色。一切都是灰色的,带有白色文本=[我不确定其他功能是否也能正常工作。我会试试的。再次感谢大家的帮助!非常感谢!

【问题讨论】:

您是使用 django 开发服务器还是通过 Apache 提供服务? docs.djangoproject.com/en/dev/howto/static-files 我假设这是在开发服务器上。你确定你的网址设置正确吗? @fsw 很确定我做到了 【参考方案1】:

开发服务器:

STATIC_ROOT留空。

更改 STATICFILES_DIRS

STATICFILES_DIRS = (

'/home/bradford/Development/Django/public_pictures/static',

)

运行./manage.py collectstatic

应该可以。

【讨论】:

【参考方案2】:

您似乎忘记在 urls.py 中包含静态 url。如果您使用的是开发服务器,您可以在 urls.py 中使用以下代码:

from django.conf import settings
from django.conf.urls.static import static

urlpatterns = patterns('',
    # ... the rest of your URLconf goes here ...
) + static(settings.STATIC_URL, document_root=settings.STATIC_ROOT)

更多关于为development 或production 部署静态文件的参考。

【讨论】:

以上是关于引导文件 404 Django的主要内容,如果未能解决你的问题,请参考以下文章

Django:引导 CDN 或从本地服务器加载引导文件?

rails 应用程序中的引导程序,404(未找到)

如何将数据从 django 传递到引导模式?

带有引导程序的 django modelform

Django 1.3 的 Twitter 引导程序

django for loop中的引导基础导航