无法在视图中加载Django静态文件

时间:2016-10-12 07:58:27

标签: python django

我是Django和Python的新玩家。我想从项目级静态文件夹加载静态文件。问题是我不能,但我仍然可以加载应用程序的静态。 这是我项目的结构:

Yaas
    __init__.py
    settings.py
    urls.py
    wsgi.py
    templates
        base.html
    static
        style.css
    auction
        templates
            auction
                index.html
        static
            auction
                style.css
        __init__.py
        apps.py
        models.py
        urls.py
        views.py

事情是它适用于拍卖的静态文件,如base.html中那样:

{% load static %}
<link rel="stylesheet" type="text/css" href="{% static 'auction/style.css' %}" />

但它使用项目静态文件返回404:

{% load static %}
<link rel="stylesheet" type="text/css" href="{% static 'style.css' %}" />

settings.py

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

我在Django上尝试了其他解决方案和文档,但它仍然无法正常工作。我正在使用Django 1.10。

1 个答案:

答案 0 :(得分:0)

我通过添加以下内容来完成这项工作:

STATICFILES_DIRS = [os.path.join(BASE_DIR, "static")]

http://melpon.org/wandbox/(第4点之后):

  

您的项目可能还会包含与之无关的静态资产   特定的应用程序。除了在你的内部使用静态/目录   应用程序,您可以在您的应用程序中定义目录列表(STATICFILES_DIRS)   设置文件,Django也会查找静态文件。

请注意,Django将输出在每个STATIC_ROOT<app>/static目录中找到的所有收集的静态文件的STATICFILES_DIRS目录必须不同。

希望有所帮助!