为什么我需要定义STATIC_URL和STATICFILES_DIRS?

时间:2015-07-09 22:25:56

标签: django deployment django-staticfiles static-files

如果我只定义一个,页面显示没有任何CSS / JS。如果我定义两者,页面加载正常。这是为什么?我以为STATICFILES_DIRS是无关紧要的?

这里有一个答案,但它并没有回答为什么我需要两者。它只是说两者都做了什么,在我看来是同样的事情。有什么区别?

List of definitions for STATIC/STATIC_ROOT/STATICFILES_DIR

2 个答案:

答案 0 :(得分:2)

根据我在StackOverflow上搜索的内容,我想我可以总结如下:

STATIC_ROOT被引用为静态服务器,无论是默认的Django静态服务器还是Heroku /等上的静态服务器。你在urls.py中指出了这个。

STATICFILES_DIR引用静态资产中的内容,因此如果有单独的文件夹,一个用于CSS,一个用于JS等。

随意添加!

答案 1 :(得分:1)

STATICFILES_DIRS是无关紧要的。如果您在应用程序内部的静态文件目录之外使用静态文件目录,则只需使用它。在没有看到更多代码和项目结构的情况下,我甚至无法猜测为什么您的页面没有加载,但您绝对不需要指定STATICFILES_DIRS。