7

Amazon s3 を使用してすべての静的ファイルを (django-storages 経由で) 保存していますが、GET よりも PUT の方がはるかに多くの費用がかかります。を実行するmanage.py collectstaticと、Django はすべての静的ファイルに対して PUT を実行します。ファイルがまったく変更されていないかどうかを最初に確認する方法はありますか?

4

1 に答える 1

13

python-dateutil をインストールするだけでよいようです。

pip install python-dateutil==1.2

このコードがないと、django-storages は日付をチェックしません。

def modified_time(self, name):
  try:
    from dateutil import parser, tz
  except ImportError:
    raise NotImplementedError()

はエラーをスローしますが、ストレージ サブクラスmodified_timeのメソッドを未実装にできるため、django は処理を続行します。modified_timeこの機能は厳密には必要ないため、彼らがそれを行う理由を理解しています。そうは言っても、なぜすべてがアップロードされているのかを示す何らかの警告があるとよいでしょう。

python-dateutil バージョン 1.2 を使用していることに注意してください。最新バージョンの dateutil を使用すると、django-storages (django-storages バージョン 1.1.4) でエラーが発生します。

于 2012-02-26T20:20:37.837 に答える