2013-03-16 54 views
1

在Django/Heroku上處理用戶生成的靜態文件的最佳方式是什麼?用於靜態文件的Django系統看起來過於複雜(爲什麼你需要collectstatic?),加上collectstatic似乎只適用於運行應用程序之前已知的文件,即它不處理任何用戶生成的靜態文件。如何在Heroku/Django上存儲靜態但用戶生成的文件

處理用戶生成的靜態文件的最佳/規範方法是什麼?具體來說,我期望創建一些圖像的縮略圖,並且我需要將它們存儲在某個地方。

回答

1

Django採用模塊化方法進行設計。每個應用程序都可以擁有自己的靜態文件。例如,Django管理界面有一堆css和圖像等,您安裝的其他第三方應用程序也可能有靜態資產。 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

相關問題