【问题标题】:Is collectstatic command necessary if application only serves media files?如果应用程序仅提供媒体文件,是否需要 collectstatic 命令?
【发布时间】:2019-12-23 09:28:27
【问题描述】:

我正在开发的基于 Django 的服务允许用户通过 REST APIDjango admin 上传媒体文件,但不提供或使用任何静态文件(如 css 样式、js 库、等等)。

媒体文件存储在数据库的特定字段中,并使用S3存储桶作为存储后端,因此服务器本身根本不直接提供任何文件。

有这样的情况是每次部署应用程序时都需要运行collectstatic 命令?

认为 Django 应用程序中的静态文件和媒体文件的概念相当简单,但我仍然对它们的配置是否应该以某种方式相关感到困惑?

【问题讨论】:

    标签: python django


    【解决方案1】:

    DEBUGFalse(通过部署)时 Django 不会提供静态文件,如果你想要 css、js 和其他静态文件(至少在管理员中,在你的情况下),你需要运行collectstatic

    因此,如果您希望 django admin 像您的开发环境(带有 css 和图像),您需要它。

    【讨论】:

      【解决方案2】:

      您的基于 Django 的服务根本不需要 collectstatic。

      问题是关于 django admin - 因为 admin 应用程序使用静态内容 css/img/js。 你在生产中使用 django admin 吗?

      • 如果是 - 那么您需要运行 collectstatic 命令,否则管理站点将因为缺少 js 文件而没有样式或完全损坏。
      • 如果不是 - 那么你的 collectstatic 命令对你没有用处。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2012-09-30
        • 1970-01-01
        • 2013-07-21
        • 2021-12-21
        • 1970-01-01
        • 1970-01-01
        • 2015-10-29
        • 2012-03-04
        相关资源
        最近更新 更多