1

在 Django/Heroku 上处理用户生成的静态文件的最佳方法是什么?静态文件的 Django 系统似乎过于复杂(你为什么需要collectstatic?),collectstatic而且似乎只适用于运行应用程序之前已知的文件,即它不处理任何用户生成的静态文件。

处理用户生成的静态文件的最佳/规范方法是什么?具体来说,我正在寻找一些图像的缩略图,我需要将它们存储在某个地方。

4

1 回答 1

1

Django 采用模块化设计方法。每个应用程序都可以拥有自己的静态文件。例如 Django 管理界面有一堆 css 和图像等,您安装的其他 3rd 方应用程序也可能有静态资产。的目的collectstatic是将所有这些资产收集到生产中的一个中央目录中,其中 Django 本身不会像在开发中那样提供静态资产,而是来自 Apache 或 Nginx 之类的东西。

在这里阅读它:https ://docs.djangoproject.com/en/dev/howto/static-files/

通过用户生成的静态内容,我猜你的意思是文件上传。这些与静态资产不同,处理方式也不同。在这里,您也设置了MEDIA_ROOT媒体上传的位置。我不能代表 Heroku,但我认为常见的做法是将媒体上传到 AWS S3 存储桶。Checkout Django-Storages,它有各种文件存储后端供您插入。https://pypi.python.org/pypi/django-storages

于 2013-03-17T00:02:08.823 回答