Django静态文件嵌套 上下文
我正试图通过wsgi和Mercurial在apache2服务器上建立django持续集成开发系统 安装程序似乎运行得很好,但是使用changegroup钩子,我运行了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
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,它似乎很有效,尽管我真的不明白为什么。我一定会多读一点,以确保一切正常。