【发布时间】:2016-06-18 18:31:47
【问题描述】:
我无法让 Django 中的静态文件与“命名空间”网址一起使用 - 我想知道我是否在这里遗漏了什么?
基本上,我的项目“static_test”中有一个名为“foo”的应用程序。在该应用程序中,我有一个包含“test.txt”的“静态”文件夹。
我没有更改 settings.py 中的任何内容,因此它包含所有默认设置:静态文件包含在 INSTALLED_APPS 中,并且 STATIC_URL 设置为 '/static/'。
这一切完全按照Django官方教程:https://docs.djangoproject.com/en/1.9/howto/static-files/
我正在使用 Django 1.9.2。
当我启动 Django 开发服务器时,这是我得到的:
localhost:8000/static/test.txt - 200 OK
localhost:8000/static/foo/test.txt - 404 Page not found
尽管官方教程声称
在您的模板中,或者硬编码像 /static/my_app/myexample.jpg 这样的 url,或者最好使用静态模板标签通过使用配置的 STATICFILES_STORAGE 存储来为给定的相对路径构建 URL(这使得它更容易当您想切换到内容交付网络 (CDN) 以提供静态文件时)。
为什么第二个 url (/static/foo/test.txt) 对我不起作用?为什么第一个网址有效?我没有项目范围的静态文件夹。
谢谢
【问题讨论】:
-
你的 STATICFILES_DIRS 怎么样
-
我的 settings.py 中没有它们。当你开始一个项目时,默认情况下是这样的,我还没有碰过。
标签: python django django-staticfiles