2013-03-26 33 views
5

私はstaticフォルダにjavascriptファイルを持っています。 Djangoはそれらを見つけてロードするので、私はstaticオプションの設定に何か問題はないとは思わない。しかし、時々.jsファイルを変更して保存すると、それを使用するDjangoテンプレートはその変更を反映しません。ブラウザでjavascriptを検査すると、最後の保存前にjavascriptが表示されます。サーバーを再起動すると何も起こりませんが、コンピュータを再起動すると問題が解決することがあります。キャッシュを明示的に扱うコードはありません。誰もこれのようなことを経験したことがありますか?DjangoはJavascriptファイルの更新を反映していませんか?

+1

で見つけることができます。 – catherine

答えて

10

私はあなたのブラウザ、またはクリアブラウザのキャッシュをリフレッシュ電力を供給でき、あなたのブラウザは

あなたのjsをキャッシュされたと考えていますか?あなたがJavaScriptファイルを編集し、私が想定し、ブラウザの変化を見ているので、私はそれがコントロール+シフト+ R

3

でのFirefoxにを信じる

クロムコントロール+ F5またはShift + F5上

あなたは積極的にあなたのDjangoアプリを開発しており、おそらくDjangoの開発ランサーバーを使用しています。ブラウザのキャッシュをクリアしてリフレッシュするよりも優れた解決策があります。 livereloadプロトコルをサポートするウォッチャーユーティリティを実行すると、の任意のスタティックファイルを変更するたびにブラウザが自動的に更新されます。

django-livereload-server pythonパッケージはすばらしい解決策を提供します。それをインストールします。

$ pip install django-livereload-server

はsettings.pyにMIDDLEWARE_CLASSES'livereload.middleware.LiveReloadScript'を追加します。

は、その後のrunserverを開始する前に

$ ./manage.py livereload

を実行します。

詳しいドキュメントは、私はjsのための私の新しいアップデートがシステム上でアップデートを行いますように1は、私はちょうどそれを何度も更新することを経験したthe django-livereload-server github site

+0

これ以上動作していないようです。 – jasonleonhard

関連する問題