django收集静态查找不存在的目录

时间:2014-03-27 15:52:58

标签: python django django-staticfiles django-settings

我正在运行一个在本地运行的现有项目。我正在尝试收集静态内容以查看我的CSS,图像等。

我的项目结构如下:

myprojectname

--- myprojectname

--- --- myproectname

--- --- ---设置

--- --- --- --- base.py(setting.py)

--- ---静态

--- --- --- image

设置包含以下静态值:

STATIC_ROOT = '/Users/myuser/myprojectname/myprojectname'
STATIC_URL = '/static/'

STATICFILES_DIRS = (
    #normpath(join(SITE_ROOT, 'static')),
    os.path.join(BASE_DIR, "static"),
    '/Users/myuser/myprojectname/myprojectname/static',
)

我尝试在模板页面中查看图像,如下所示:

{% load staticfiles %}

<img src="{% static "image/logo.png" %}" alt="My image"/>

图片无法加载。当我看到图像的路径时,一切看起来都很棒,它指向:localhost / static / image / logo.png

当我尝试收集静态时,我收到以下错误:

for entry in os.listdir(path):
OSError: [Errno 2] No such file or directory: '/Users/myuser/myprojecname/myprojectname/myprojectname/static'

* 请注意,它正在寻找3个myprojectname目录。

问题是我看不到像这个图像那样的静态内容。我做错了什么?

1 个答案:

答案 0 :(得分:0)

我觉得你在这里有些困惑。 STATICFILES_DIRS是您收集的目录列表(以及您应用中的所有其他静态文件夹)

STATIC_ROOT是放置您正在收集的静态文件的位置。 所以它们不能是同一个文件夹。