Django 1.8不在开发中提供静态文件

时间:2015-04-28 13:09:22

标签: django

我使用https://docs.djangoproject.com/en/dev/howto/static-files/中的确切设置,我的应用程序未加载文件。我花了很长时间才试图解决一些如此微不足道的事情,但它只是不起作用。我已经看过其他选择,但这些也没有用。

这是在我的设置文件中:

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

这是我的网址文件的末尾:

] + static(settings.STATIC_URL, document_root=settings.STATIC_ROOT)

当我有静态文件目录时,我做了一个收集静态,所以我的静态目录中应该有正确的文件。我也创建了测试文件而没有。

下面是调试视图中的内容:

Request Method: GET
Request URL:    http://localhost:8000/static/assets/stylesheets/style.css
Raised by:      django.views.static.serve

上次我写了一个应用程序,这个工作正常,我不知道为什么现在还没有。

1 个答案:

答案 0 :(得分:1)

您还没有使用文档中的确切设置...哪个很好,但如果STATICFILES_DIRS,您至少需要执行以下操作:

  1. 设置STATIC_ROOT。这应该是您的静态资产所在的文件夹的绝对路径(在他们收集"收集"之前)。
  2. 设置collectstatic。这与上述路径不同,是您在运行collectstatic时收集所有静态资产的位置。
  3. 运行STATICFILES_DIRS命令从您的STATIC_ROOTDEBUG = True
  4. 收集(即复制)您的资产

    根据您的配置以及STATIC_ROOT,您甚至不需要在开发模式中定义HttpRequestMessage