我正在计划一个新的 Django 项目,并希望一切顺利。我偶然发现了如何组织项目目录布局的问题。幸运的是,网络上有很多优秀的项目模板示例。尽管如此,我仍然难以理解一件事:
建议将模板文件放在项目根目录下的单独目录中,该目录由应用程序划分为子目录。因此,模板不位于应用程序目录中。这对我来说似乎是合乎逻辑的,因为我们想将应用程序逻辑与表示逻辑分开。但是静态文件呢?在这里,常见的做法似乎是在应用程序目录中找到静态文件,并在开发时将它们加载到项目根目录下的“静态”目录中(collectstatic)。而这个逻辑我不明白。由于静态文件(即 js、css、图像)通常是在模板中访问的,而不是在应用程序代码中,我会将它们算作表示逻辑。那么为什么它们不像模板那样存储——项目根目录下的目录,以及单个应用程序的子目录?
我知道我可以将这些文件存储在任何我想要的地方,但我想人们这样做可能有一个很好的理由。这可能是什么原因?