Django静态文件嵌套 上下文

Django静态文件嵌套 上下文,django,apache,deployment,filesystems,Django,Apache,Deployment,Filesystems,我正试图通过wsgi和Mercurial在apache2服务器上建立django持续集成开发系统 安装程序似乎运行得很好,但是使用changegroup钩子,我运行了python manage.py collectstatic--settings=“sitename.settings”--noinput来更新位于/path/to/sitename/static/中的静态文件目录 问题 但是每次运行python manage.py collectstatic--settings=“sitename

我正试图通过wsgi和Mercurial在apache2服务器上建立django持续集成开发系统

安装程序似乎运行得很好,但是使用changegroup钩子,我运行了
python manage.py collectstatic--settings=“sitename.settings”--noinput
来更新位于
/path/to/sitename/static/
中的静态文件目录

问题 但是每次运行
python manage.py collectstatic--settings=“sitename.settings”--noinput
命令时,我的
/path/to/sitename/static/
目录都会在
/path/to/sitename/
中获得文件系统的完整副本,从而可以轻松访问所有代码文件、设置文件等。。。运行5次后,我在静态目录中有5个嵌套的
/static/
,例如
static/
static/static/
static/static/
等等

这将成为一个真正的问题。每次运行时,我都可以删除
static/
中的所有内容,但需要保留一些文件权限

使用的配置 目前,
DEBUG=True
/path/to/sitename/settings.py

# Absolute path to the directory static files should be collected to.
# Don't put anything in this directory yourself; store your static files
# in apps' "static/" subdirectories and in STATICFILES_DIRS.
# Example: "/home/media/media.lawrence.com/static/"
STATIC_ROOT = '/path/to/sitename/static/'

# URL prefix for static files.
# Example: "http://media.lawrence.com/static/"
STATIC_URL = '/static/'

# URL prefix for admin static files -- CSS, JavaScript and images.
# Make sure to use a trailing slash.
# Examples: "http://foo.com/static/admin/", "/static/admin/".
ADMIN_MEDIA_PREFIX = '/static/admin/'

# Additional locations of static files
STATICFILES_DIRS = (
    # Put strings here, like "/home/html/static" or "C:/www/django/static".
    # Always use forward slashes, even on Windows.
    # Don't forget to use absolute paths, not relative paths.
    '/path/to/sitename/blog/static',
)

# List of finder classes that know how to find static files in
# various locations.
STATICFILES_FINDERS = (
    'django.contrib.staticfiles.finders.FileSystemFinder',
    'django.contrib.staticfiles.finders.AppDirectoriesFinder',
    'django.contrib.staticfiles.finders.DefaultStorageFinder',
)
问题: 我错过了什么?在使用staticfile时有什么我不懂的吗?
这种解决方案还会有其他问题吗?

是collectstatic转储文件的地方,也是它搜索静态文件的地方,请注意,这是可选的。默认情况下,django将在所有注册的应用程序中搜索
静态
目录

就复制而言,根据文件:

默认情况下,重复文件名的解析方式与 模板解析有效:首先在其中一个模板中找到的文件 将使用指定的位置。如果您感到困惑,findstatic 命令可以帮助您显示找到了哪些文件

我没有看到在您的设置中设置了
STATIC\u ROOT
,因此我怀疑您需要确保这两个都指向正确的位置


使用静态文件最简单的方法是创建一个名为
static
的目录作为应用程序目录的子目录,并将
STATICFILES\u DIRS
保留为空。

谢谢。我从头开始重新做了settings.py,它似乎很有效,尽管我真的不明白为什么。我一定会多读一点,以确保一切正常。