問題タブ [whitenoise]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
2 に答える
1141 参照

python - 圧縮された静的ファイルを使用した Django Whitenoise

ホワイトノイズと圧縮された静的ファイル (libsass を含む) を使用して django プロジェクトを実行することができません。以下のリンクで、必要な静的ファイルをオフラインで圧縮することによってのみ可能であると読みました。しかし、dockerコンテナを起動すると、compressコマンドを実行しています

エラーが発生します:

サイトをリクエストしようとすると、次のエラーが表示されます (予想通り?):

設定は次のとおりです (cookiecutter-django でビルドします。以下の完全なコード ベースのリンクを参照してください)。

それで、インターネットを1日検索した後。私は立ち往生しています...助けや提案をありがとう!

コードベース: https://github.com/rl-institut/E_Metrobus/tree/compress

これはcookiecutter-django-foundationでビルドされています

への次の変更を含みますconfig/setttings/production.py

考えられる関連リンク:

編集

Justinsの回答を使用して解決しました(以下を参照してください。追加の変更があります)。私の間違いは、既に実行中のコンテナーでファイルを圧縮しようとしたことで、上記のエラーが発生しました。次の行で Dockerfile を変更した後 (コマンドが重複していることに注意してくださいcollectstatic!):

イメージの再構築はすべて魅力的に機能しました:)さらに、上記の設定から逸脱してCOMPRESS_ENABLED=True、設定/環境ファイルに設定する必要がありました。

0 投票する
1 に答える
62 参照

django - 404 when GETing from STATIC_URL does not call GET on my fallback View

In my settings.py, I have STATIC_URL='/static/'

I have a view which I use as a fallback for the static url

which I add it to my urls like so

Next, I want to make sure that the fallback URL is working. When I go to a bad link like localhost/static/garbage it shows me the Django 404 error page but it claims that it was raised by MyView.

What's extremely frustrating is I have two apps with the same static files handling. One of the apps trigger my view, the other does not. I cannot tell what's different that's causing the issue. Both are on whitenoise==4.1.x and django==2.3

0 投票する
1 に答える
134 参照

django - django ホワイトノイズの除去のテスト

私の django マイクロサービスでは、ホワイトノイズ関連のコードの一部を、CDN レベルで処理する必要があるため不要な他のコードと共にコピーしました。settings.py から削除"whitenoise.middleware.WhiteNoiseMiddleware"しましたが、他に何かを削除する必要があるかどうかを確認する方法がわかりません。簡単に言えば、マイクロサービスがホワイトノイズを使用しているかどうかを確認するにはどうすればよいですか?

0 投票する
2 に答える
54 参照

django - Django の collectstatic が Heroku 環境のフォルダーを無視する

私は Django + Vue モノリスを構築しています。私が達成しようとしているリリース パイプラインは、Vue フロントエンドを Django アプリの静的フォルダーに構築しcollectstatic、サーバーを実行して起動することを想定しています。静的ファイルは WhiteNoise 経由で提供されます。

私のマシンでは完璧に動作します。構築されたフォルダーは、収集された静的ファイルの宛先に配置され、その内容が適切に提供されます。

アプリの静的フォルダー収集された静的ファイル

しかし、Heroku でホストされている場合、このビルドされたオンザフライ フォルダーを除いて、他のすべてが収集されます。アプリstaticfilesのフォルダーに存在する場合でも、最終的には . static実行順序が正しいcollectstaticことを確認し、フォルダーが正常に構築されたことを確認した後、手動で実行しました。

お気づきかもしれませんが、このフォルダーは .gitignore にありますが、そこから削除しようとしましたが無駄でした。

そのような奇妙な行動の理由は何でしょうか?

ps DEBUG を True に設定し、Django の開発サーバーを介して静的ファイルを提供すると、アプリケーションが動作し、ファイルが正しい場所にあることが再び証明されます。