Django - 我可以在 运行 collectstatic 之后删除应用程序静态文件吗

Django - Can I delete apps static files after running collectstatic

来自个回答,

collectstatic is a ready-made script that prepares this directory for you, so that you can connect it directly to your deployment script.

在 运行 collectstatic 命令之后,我的应用程序中的所有静态文件都被复制到我项目根目录中的 static 文件夹中。 我可以删除我的应用程序中的 static 文件夹吗?因为它们已经被复制了。我有点觉得它只是在复制和占用我的文件大小,还是我遗漏了什么? 我删除了应用程序中的 static 文件夹,但它不再起作用。为什么要复制我的静态文件,或者我可以在上线后删除它们吗?

当你运行收集静态文件时,Django 会收集所有应用程序中的所有静态文件,并将其放入指定的静态文件文件夹中。这非常适合部署,例如在 Apache 或 Nginx 上,因为它们知道在哪里查找静态文件。任何额外的静态文件(不属于任何应用程序的,也可以放入此文件夹)。

是的,在生产中,如果您担心磁盘存储,您可以删除每个应用程序中的静态文件。但是,如果您的文件很大,请研究从 S3 或 Azure Blob 存储提供静态文件的解决方案。

此外,如果启用 DEBUG 模式,Django 将提供应用程序文件夹中的静态文件。如果关闭,它将从 statics 文件夹中查找 statics 文件。