与DjangoProject文档中的STATIC_ROOT混淆

时间:2014-07-25 15:49:53

标签: django django-staticfiles

我对STATIC_ROOT

DjangoProject 1.6 Documentation感到困惑
  

collectstatic将收集的目录的绝对路径   用于部署的静态文件。

     

示例:" /var/www/example.com/static/"

这是否意味着

  

collectstatic将收集的目录的绝对路径   用于部署的静态文件来自

或者是否意味着

  

collectstatic将收集的目录的绝对路径   用于部署的静态文件

似乎它可能对我来说非常混乱并产生巨大的差异。

任何澄清都会帮助我停止生气。

1 个答案:

答案 0 :(得分:1)

这意味着collectstatic将收集静态文件的位置。 Collectstatic将从不同的静态文件夹(在不同的应用程序,主静态目录等)中获取所有静态文件,并将它们放在STATIC_ROOT指定的位置。事实上它从各种文件夹收集文件收集到单个文件夹,并且STATIC_ROOT是一个单独的文件夹是一个轻微的指针:P

这也在documentation

  

警告:   这应该是一个(最初为空)目标目录,用于将静态文件从其永久位置收集到一个目录中,以便于部署;它不是永久存储静态文件的地方。您应该在staticfiles的查找器找到的目录中执行此操作,默认情况下,这些目录是静态/' app子目录和STATICFILES_DIRS中包含的任何目录。

因此,最初应将静态文件存储在STATIC_ROOT指定的文件夹中。如果首先在另一个位置找到文件,则STATIC_ROOT目录中的初始文件将在运行collectstatic时被覆盖并丢失。