python django中MEDIA_ROOT(媒体文件)和STATIC_ROOT(静态文件)的真正区别以及如何正确使用它们

The real difference between MEDIA_ROOT (media files) and STATIC_ROOT (static files) in python django and how to use them correctly

MEDIA_ROOT 和 STATIC_ROOT 在 python django 中的真正区别以及如何正确使用它们?

我只是在寻找答案,但我仍然对此感到困惑,最后我得到了两个不同的答案:

其中之一是正确的,如果不是直接和简单的话,那么每个人都可以理解以及如何正确使用它们,我的意思是要在其中放入什么样的文件

了解 MEDIA_ROOTSTATIC_ROOT 之间的真正区别有时可能会造成混淆,因为它们都与服务文件有关。

为了弄清楚它们的区别,我可以指出它们的用途和它们所服务的文件类型。

  1. STATIC_ROOT, STATIC_URL and STATICFILES_DIRS都是用来服务网站或应用所需的静态文件。而 MEDIA_URL and MEDIA_ROOT 用于提供用户上传的媒体文件。

如您所见,主要区别在于媒体文件和静态文件。所以,让我们区分它们。

  1. 静态文件是指CSS、JS、JQuery、scss、其他图片(PNG、JPG、SVG等)等 用于开发、创建和呈现您的网站或应用程序。而媒体文件是用户在使用网站时上传的文件。

因此,如果有一个名为 main.js 的 JavaScript 文件用于提供一些功能,例如在单击按钮时显示弹出窗口,那么它就是一个 STATIC 文件。同样,像网站标志这样的图像,或者网站上显示的一些用户无法通过任何操作改变的静态图像,也是STATIC文件。

因此,在网站的开发和呈现过程中使用的文件(如上所述)被称为静态文件,由 STATIC_ROOT、STATIC_URL 或STATICFILES_DIRS(在部署期间)在 Django 中。

现在对于 MEDIA 文件: 例如,用户上传的任何文件;正常使用网站或应用程序期间的视频、图像或 excel 文件等在 Django 中称为 MEDIA 文件。

MEDIA_ROOT 和 MEDIA_URL 用于指出存储在应用程序中的 MEDIA 文件的位置。

希望这能让你明白。