Python 当你不';是否在django中定义静态文件\u DIR?

Python 当你不';是否在django中定义静态文件\u DIR?,python,django,static,Python,Django,Static,我使用django,我的应用程序可以工作,当我改变style.css时,应用程序会改变,等等 然而,我最近发现我没有定义STATICFILES\u DIR,我只定义了 STATIC_URL = '/static/' STATIC_ROOT = os.path.join(BASE_DIR, "static/") 这仅适用于静态采集 但现在我想知道,django如何知道在哪里查找静态文件 特别是在polls/static/polls目录中?默认情况下,Django将在每个应用程序中查找名为sta

我使用django,我的应用程序可以工作,当我改变style.css时,应用程序会改变,等等

然而,我最近发现我没有定义
STATICFILES\u DIR
,我只定义了

STATIC_URL  = '/static/'
STATIC_ROOT = os.path.join(BASE_DIR, "static/")
这仅适用于
静态采集

但现在我想知道,django如何知道在哪里查找静态文件


特别是在
polls/static/polls
目录中?

默认情况下,Django将在每个应用程序中查找名为
static
的目录。稍后将对此进行详细介绍

从:

现在,我们可能可以不使用静态文件 直接在我的应用程序/静态/(而不是创建另一个我的应用程序) 子目录),但这实际上是个坏主意。Django将使用 它找到的第一个名称匹配的静态文件,以及 在另一个应用程序Django中使用相同名称的静态文件 将无法区分它们

关键在于

…Django将使用它找到的第一个名称匹配的静态文件

有称为“静态文件查找器”的Django库可以帮助完成此过程。您可以通过修改Django配置文件中已安装的应用程序来配置它们

据报道,他们实际上没有证件,因为他们被认为是私人的。但是,您可以在GitHub上为那些“查找者”提供帮助

Django项目由称为应用程序的模块组成。生成应用程序时,每个应用程序都包含一些默认文件。虽然有配置,但Django也有很多惯例。例如,views.py文件。另一个这样的约定是应用程序的静态目录文件夹

您的
STATICFILES\u DIR
数组允许您添加其他放置静态文件的位置。这很有用,因为Django在真实环境中处理静态文件的方式很好,您将在准备部署时看到这一点


这是完全可选的,但它可以让您以后的生活更轻松。

ahhhh好的,谢谢,一旦您定义了
STATICFILES\u DIR
这就不再发生了,我明白了,谢谢!不客气。我还补充了一些信息。