問題タブ [django-compressor]
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.
python - 圧縮されたアセットを展開するためのより良い方法 - Django Compressor
そのため、より良い解決策を見つけることができないというトリッキーな問題があります。
django-compressorファイルの圧縮/縮小に優れた仕事をするものを使用しています。私が直面している問題は、展開中です。しばらくの間、compressプロダクションでタグを使用しているだけで、すべてのページでカールを実行して、正しい CSS/JS が再生成されるようにします。そのため、新しいユーザーは圧縮プロセスの矢面に立たされる必要がありません。
ファイルを事前に圧縮し、CDN にプッシュして、ランディング ページやログイン ページの舞台裏で事前に読み込むことができる管理コマンドがあることは知っています。
ここに問題があります。一部の JavaScript コードでは、コンテキスト変数と django タグ [カスタムとネイティブの両方] を使用しています。
これは、圧縮中に明らかに値を持たないタグを実行しようとするため、エラーが発生します。付属していますCOMPRESS_OFFLINE_CONTEXTが、動的ではありません。
以前にこの問題に遭遇した人はいますか。コードがいくつかのdjangoタグ/コンテキスト変数と混在している場合、どのように圧縮を行いますか?
django - django-compressor と data-URI
私はdjango-compressorを稼働させており、COMPRESS_OFFLINEのオンとオフの両方でテストしました(両方とも動作します)。今、私はその CSS データ URI 生成機能を使用しようとしていますが、うまくいきません。それ以外の点では優れたドキュメントは、設定を追加する以外に、構成または使用方法について何も述べていません。
次に、次のようなものを含むスタイルシートにリンクすると:
そのスタイルシートでソースを表示すると、データURIとして表された画像が表示されると思いますが、そうではありません-それはまだ通常のパス/ファイルへのパスです。
COMPRESS_OFFLINEtrueに設定して実行manage.py compressし、生成されたファイルを検査すると、同じことが起こります。
django-compressor を使用してスタイルシートで生成された data-uris を取得するために必要な追加の手順はありますか?
python - gzip を使用して JavaScript を提供する Django コンプレッサー
Amazon s3 から gzip ファイルを提供しようとしています。これは私のsettings.pyです:
これを行うと、django は圧縮された *.js および *.css ごとに *.gz ファイルを作成しますが、奇妙なことに *.css ファイルのみが gzip として提供されます。aws s3 では、.css ファイルに Content-Encoding: gzip があり、*.js にはないことがわかります。ここで何が起こっているのですか?
css - Django コンプレッサー、js のみを圧縮
4094 番目のセレクターを超えるファイルの cssセレクターが無視されるie7 バグがあります。小さなcssファイルから大きなcssファイルを作成するdjangoコンプレッサーをどのように無効にしますが、javascript用に保持しますか?
設定では、より少ないアセットやその他のアセットをオフラインでプリコンパイルできるようにする設定COMPRESS_ENABLED = Falseを行うことができます。理想的には、レール用にこのようなCOMPRESS_CSS_FILTERS ツールが必要です(ブログ投稿)
編集
実際にはCOMPRESS_CSS_FILTERS は文字列を返すだけなので、post_compress フックが必要です (そして、django コンプレッサーが {% compress %} ブロック内の各タグ属性に対して発火するもので、すべての css が生成された後に発火するものとして要求される)。
python - Django Compressor、S3 および SASS、コンパイル済みファイルがアップロードされない
Amazon s3 と SASS で Django Compressor をセットアップしようとしていますが、この問題が発生します。
したがって、これらはdjangoコンプレッサーの設定です:
これは、ファイルが呼び出されるテンプレートの一部です
問題は、圧縮されたファイルが専用のフォルダーに置かれるため、アップロードされないことです (アセット内のファイルのみがアップロードされます)。
私は何か間違ったことをしましたか?
django - {% static %} で Django を圧縮する
私はdjango圧縮を機能させようとしていますが、私の使用のために機能しないと思い{% static %}ます。
私のテンプレートは次のとおりです(私はpyjadeを使用していますが、問題ではありません):
そして私のsettings.pyの一部:
圧縮しても$ python manage.py collectstatic機能せず、元のファイルが吐き出されます。ドキュメントには、私が与えたと思う絶対パスを提供する必要があると書かれていますよね?誰かが圧縮作業を手伝ってくれますか? ありがとう。(私は django の静的ファイルに詳しくありません)。
アップデート
ティミーのコメントをたどった後、設定で有効にしましたCOMPRESS_ENABLED = True(およびDEBUG=False) が、ファイルを見つける必要があります。
静的ファイルが正しく検出され、レンダリングされることに注意してください ( の場合COMPRESS_ENABLED = False)。
私の構造:
しばらくプレイした後、compress が css と に問題があるよう{% static %}です。
スタイルシートを
link(rel="stylesheet", href="/static/less/bootstrap.css")
大幅に圧縮する
link(rel="stylesheet", href="{% static 'less/bootstrap.css' %} ")と、エラーが発生します。
js では、問題なくレンダリングされます。script(type="text/javascript", src='{% static "bootstrap/js/bootstrap.min.js" %}')
django-compressor - 条件付きで django-compressor に LESS ファイルを含めるにはどうすればよいですか?
{% compress css %}次のように、条件付きでブロック内に LESS ファイルをインポートしたいと思います。
私はオフライン圧縮を使用していてOfflineGenerationError、それを修正する方法がわかりません。
私にはいくつかのアイデアがあります:
- インポートのロジックをビューに移動し、インクルード用の 1 つの html ファイルとインクルードなしの 1 つの html ファイルをサーバーに移動します
- ロジックをcssに移動します(可能であれば/どのように)
- LESS ファイルを圧縮する条件付きインクルードを提供する
- 圧縮を削除してLESSファイルをCSSにコンパイルすると、上記のコードが機能するはずです
ありがとう、
アレック
python - Herokuでのdjango cssおよびjsファイルのgzip圧縮
css および js ファイルを圧縮して gzip ファイルとして提供しようとしていますが、成功しません。
すべての方法、django-pipeline、django-compressor などを試しました。
gzipファイルを作成するためにdjango-compressorを入手しましたが、それらを提供する方法がわかりません。GzipMiddleaware を使用して、html ファイルを圧縮して提供しています。
どのように gzip し、heroku django で静的ファイルを提供するかについて、ステップバイステップのガイドを書いてください。
詳細な手順をお尋ねして申し訳ありませんが、私はスプーンで餌を与えるように求めているわけではありません.
参考までに、私はdjango-1.5を使用しています
よろしくお願いいたします。
django - s3 の Django-compressor が更新されたファイルを認識せず、コピーしない
Django、django-compressor、django-storages を使用して、サイトの静的ファイルを s3 に配置しています。それらを s3 に入れることはできますが、ファイルに変更を加えてから collect static を実行すると、変更されたファイルがないと報告されます。
ファイルを変更したばかりなので、これがサーバーのどこか、s3 のどこか、または他の場所の不一致のタイムスタンプの問題なのか疑問に思っています。
Collect static のソースを見てきました ( https://github.com/django/django/blob/master/django/contrib/staticfiles/management/commands/collectstatic.py#L286 )
そしてそれはメッセージを与えるようです
それ以外の
すでにコピーされている場合は、更新した場合にすでにコピーされていると考える理由は明らかではありません。
コンプレッサーまたは静的ファイルに関するドキュメントを誤解している可能性がありますが、ファイルが更新されたときにファイルの収集と処理を既に処理しているように思えますが、それでも (変更されていません) と表示されます。
django - 最初のcompressステートメントの後にDjango-compressorが機能しない
私はさまざまなjsファイルを含むWebサイトを持っており、django-compressorを次のように使用しています:
何らかの理由で、最初のjsファイルのみを作成しています。EC2 でアプリをホストしています。そこに最初のファイルが表示されます。ページでソースを表示すると 2 番目のファイルが表示されますが、ファイル自体は存在しません (2 番目の js ファイルへのリンクをクリックすると 404 が返されます)。私が間違っていることはありますか?私は以下のように私の設定を持っています:
CSSファイルでは完全に機能しています...しかし、最初の圧縮フラグの後に他のjsファイルでは失敗します...