找不到Django引导程序文件

时间:2017-06-05 19:54:24

标签: python css django twitter-bootstrap

我已经在一些教程之后使用bootstrap设置了Django,但即使我在教程中做同样的操作,Django也找不到静态文件。

我的项目具有以下结构:

webshop
    shop
        migrations
        templates
        ...
    static
        css
            bootstrap.min.css
        ...
    webshop
        ...
    db.sqlite3
    manage.py

在数据settings.py中,我添加了

STATIC_URL = '/static/'

在Index.html中,我使用以下代码加载静态文件:

<head>
        <title>Webshop</title>
        {% load staticfiles %}
        <link rel="stylesheet" href="{% static 'css/bootstrap.min.css' %}" type="text/css"/>
</head>

但是Django找不到数据bootstrap.min.css。

2 个答案:

答案 0 :(得分:3)

在HTML代码中添加

{% load static %}

和你的setting.py添加

STATIC_URL = "/static/"
STATICFILES_DIRS = (
        os.path.join(BASE_DIR, 'static'),
)

答案 1 :(得分:1)

根据Django文档,您应该在静态文件未绑定到特定应用程序时指定文件夹:

STATICFILES_DIRS = [
    os.path.join(BASE_DIR, "static"),
    '/var/www/static/',
]

https://docs.djangoproject.com/en/1.11/howto/static-files/

在你的情况下,它可能是:

STATIC_URL = '/static'/
STATICFILES_DIRS = [
    os.path.join(BASE_DIR, "static"),
    '/path/to/webshop/static',
]

另请注意上面有关{% load static %}的@ kiran.koduru评论。这是在Django模板中加载静态文件的正确方法。