5

答えを見つけることができなかった非常に単純な質問があります。Django staticfiles アプリを使用して、次のコマンド ラインを入力して statics collect ルーチンを呼び出しますpython manage.py collectstatic

私の問題は、静的データを提供するいくつかのアプリケーションと、ユーザーがアップロードしたファイルを含むメディア ディレクトリがあることです。Django は、メディア ファイルを含むすべてのファイルを静的ディレクトリにコピーします。

を呼び出したときに、Djangoがユーザーがアップロードしたファイルを静的ディレクトリにコピーしないようにしたいだけpython manage.py collectstaticです。誰にもアイデアはありますか?オプションを試し--ignoreましたが、成功しませんでした...

前もって感謝します。

4

2 に答える 2

6

これは django.contrib.staticfiles.finders.DefaultStorageFinder の問題でした。STATICFILES_FINDERS から削除してみてください。

于 2012-04-04T13:07:04.757 に答える
0

では、 を使用すると正確に何が機能しないの--ignoreでしょうか?

本当の解決策は、ユーザーが生成したコンテンツと静的ファイルを混在させることではありません。

両方のタイプを分離しておくと、静的ファイルを簡単にバージョン管理下に置くことができ、この面でも除外を処理する必要がなくなります。実際、メディア (ユーザー生成) と静的ファイルからの分離が、静的ファイルの背後にある理論的根拠です。

以前のバージョンの Django では、静的アセットをユーザーがアップロードしたファイルとともに MEDIA_ROOT に配置し、両方を MEDIA_URL で提供するのが一般的でした。staticfiles アプリを導入する目的の 1 つは、静的ファイルをユーザーがアップロードしたファイルから簡単に分離できるようにすることです。

このトピックに関するドキュメントは非常に包括的です: https://docs.djangoproject.com/en/dev/howto/static-files/

于 2012-02-29T12:07:51.883 に答える