私はdjango-compressorを使用することに本当に苦労しています。静的ファイルと資産のDjango Compressorとの分離&collectstaticの使用
ここで私が達成しようとしてんだよ:静的ファイルの
分離&資産(LESS、CoffeeScriptの)
私は
資産のディレクトリに自分のLESS CSSとCoffeeScriptのファイルを分離したいと思いますapp
└── assets
├── coffee
│ └── script.coffee
└── less
└── style.less
、このような私の静的なディレクトリ内の画像のような静的な資産を残し
例えばこれを行うには
app
└── static
├── hello.txt
└── photo.jpg
、私はジャンゴ・コンプレッサは(期待通りに動作します)のファイルを見つけることができるように、私のSTATICFILES_DIRS変数に資産のパスを追加しました。これは正しいアプローチですか?私はdjango-compressor専用の独立したロードパスを見つけようとしていますが、これらのアセットを静的に扱うつもりはないので運がありません。生産に展開するためのプロダクションデプロイメント
用のファイルの
コレクションは、私は、その後コンパイルCSSのように(ように例えば画像や)他の私のアプリ/静的なディレクトリ内のメディアと一緒に& JSファイルがに収集されるだろうapp/static-prodディレクトリ。しかし、collectstaticコマンドを使用しても資産が収集されるため、これはうまくいかない。
./manage.py compress
コマンドを使用して
(django-cpython)[email protected]:~/django_learning$ ./manage.py collectstatic --noinput
Copying '/home/fots/django_learning/app/assets/less/style.less'
Copying '/home/fots/django_learning/app/assets/less/import.less'
Copying '/home/fots/django_learning/app/assets/coffee/script.coffee'
Copying '/home/fots/django_learning/app/static/photo.jpg'
Copying '/home/fots/django_learning/app/static/hello.txt'
5 static files copied.
は私のコンパイルされたファイルではなく、この例では、photo.jpgまたはhello.txtの風袋を取ります。
私は、これは例えばcollectstatic
と--ignoreフラグを使用しているかがわかってきた唯一の可能な方法
(django-cpython)[email protected]:~/django_learning$ ./manage.py collectstatic --noinput --ignore=less --ignore=coffee
Copying '/home/fots/django_learning/app/static/photo.jpg'
Copying '/home/fots/django_learning/app/static/hello.txt'
2 static files copied.
私もCOMPRESS_ROOTとCOMPRESS_URL設定変数の周り混乱しましたが、これらは、さらに問題を引き起こします。 COMPRESS_ROOTを変更すると、集約の問題が解決されますが、現在はcompressコマンドを使用すると、生成されたファイルは静的ファイルとは別の場所にあります。
これらのソリューションはほとんど優雅に見えません。これを行うより良い方法はありますか?私は何かが欠けているように感じる。任意の助けを事前に
感謝:)