我正在使用 Django 1.3,我意识到它有一个collectstatic命令可以将静态文件收集到STATIC_ROOT中。在这里,我还有一些需要使用STATICFILES_DIR提供的其他全局文件。
我可以让他们使用相同的目录吗?
谢谢。
我正在使用 Django 1.3,我意识到它有一个collectstatic命令可以将静态文件收集到STATIC_ROOT中。在这里,我还有一些需要使用STATICFILES_DIR提供的其他全局文件。
我可以让他们使用相同的目录吗?
谢谢。
不。事实上,该文件django/contrib/staticfiles/finders.py
甚至会对此进行检查,并ImproperlyConfigured
在您这样做时引发异常:
“STATICFILES_DIRS 设置不应包含 STATIC_ROOT 设置”
可以包含带有静态文件的STATICFILES_DIRS
其他目录(不一定是应用程序目录),并且这些静态文件将STATIC_ROOT
在您运行时收集到您的collectstatic中。然后,这些静态文件将由您的 Web 服务器提供,它们将从您的STATIC_ROOT
.
如果您当前有要提供的文件STATIC_ROOT
,那么您需要将这些文件移动到不同的目录并将该其他目录放入STATICFILES_DIRS
. 您的STATIC_ROOT
目录应该是空的,并且所有静态文件都应该收集到该目录中(即,它不应该已经包含静态文件)。