問題タブ [sorl-thumbnail]
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.
django - Django + S3(boto)+ Sorlサムネイル:最適化の提案
開発中のDjangoサイト全体でS3ストレージバックエンドを使用して、EC2サーバーからの負荷を軽減し、複数のウェブサーバー(冗長性、負荷分散)がアップロードされたメディアの同じセットにアクセスできるようにします。
Sorl.thumbnail(v11)テンプレートタグがテンプレートで使用されており、柔軟な画像のサイズ変更/トリミングが可能です。
メディアが豊富なページのパフォーマンスはあまり良くなく、初めて生成する必要のあるサムネイルを含むページにアクセスすると、リクエストもタイムアウトになります。
これは、S3から元の画像をチェック/ダウンロードし(非常に大きく高解像度になる可能性があります)、サムネイルをレンダリング/チェック/アップロードするためであると理解しています。
この設定の最善の解決策は何だと思いますか?
S3コピーに加えてファイルのローカルコピーを保存する提案を見てきました(負荷分散にいくつかのサーバーが使用されている場合はあまり良くありません)。また、sorl.thumbnailをだますために0バイトのファイルを保存することが提案されているのを見ました。
これにアプローチする他の提案やより良い方法はありますか?
django - sorl-thumbnail: 保存する前に元の画像のサイズを変更しますか?
モデルで sorl-thumbnail v11.01 と ImageField を使用して、アップロードされたファイルを保存する前にサイズを変更する簡単な方法はありますか (アップロードされた場合に大量の画像を保存しないようにするため)。前もって感謝します。
python - Django: sorl-thumnail と自分のファイル サーバーでの画像ファイルのホスティング
私は非常にsorl-thumbnailライブラリが好きで、現在のアプリケーション (django) サーバーではなく、静的ファイルを提供するための Web サーバーを備えた (別の) 自分のファイルサーバーに画像ファイルを保存したいと考えています。
- カスタム django ストレージを作成する必要がありますか?
- リモートの静的ファイル サーバーにファイルをアップロードするにはどうすればよいですか?
- 多数のアプリケーション (django) サーバーと多数のファイル サーバーがある場合はどうなりますか?
- カスタム ファイル アップロード ハンドラを使用する方が良いですか? そうでない場合、それはいつ役に立ちますか?はいの場合、それを sorl-thumbnail で使用するにはどうすればよいですか?
PS WebプログラミングとDjangoの経験があまりないため、これを行う正しい(良い)方法がわかりません。
django - Sorl-thumbnailでのDjangoTemplateSyntaxエラー
ステージングサーバーでSorl-thumbnailを実行しようとしていますが、アプリがローカルホストで正常に動作するため、TemplateSyntaxErrorが発生します。
エラーは{%endthumbnail%}で発生します
どんな助けでも大歓迎です。ありがとう!
django - djangoのs3に画像とサムネイルを保存する
django-storages、boto、および sorl-thumbnail を使用して、画像をサムネイル化し、s3 に保存しようとしています。動作していますが、小さな画像でも非常に遅いです。フォームを保存してs3に画像をアップロードするときは遅くても構わないのですが、その後は早く画像を表示してほしいです。
この SO の質問に対する回答では、サムネイルは最初のアクセスまで作成されませんが、get_thumbnail() を使用して事前に作成できることが説明されています。
Django + S3 (boto) + Sorl Thumbnail: 最適化の提案
私はそれをやっていますが、画像が表示されるときではなく、画像をアップロードするときに、thumbnail_kvstore テーブルへのすべてのエントリが作成されるようです。
問題は、画像を表示するページがまだ非常に遅いことです。デバッグ ツールバーのログ パネルを見ると、s3 との通信がまだたくさんあるようです。画像とサムネイルがアップロードされてキャッシュされた後、s3 と通信せずにページがすばやくレンダリングされるようです。
私は何を間違っていますか?ありがとう!
更新:弱いハックでうまくいったようですが、これを適切に行う方法を知りたいです:
https://github.com/asciitaxi/sorl-thumbnail/commit/545cce3f5e719a91dd9cc21d78bb973b2211bbbf
更新: @sorl の詳細情報
私は2つのビューで作業しています:
ADD VIEW: このビューでは、フォームを送信して、画像を含むモデルを作成します。画像はs3にアップロードされます。post_save シグナルでは、get_thumbnail() を呼び出して、必要になる前にサムネイルを生成します。
表示ビュー: このビューでは、追加ビューで生成されたサムネイルを表示します。
パッチなし:
ビューの追加: kvstore テーブルに 3 つのエントリを作成し、キャッシュに 10 回アクセス (6 セット、4 取得)、デバッグ ツールバーのログ タブに「HTTP 接続を確立しています」と 12 回表示
表示ビュー: kvstore テーブルにはまだ 3 つのエントリしかなく、キャッシュから取得したのは 1 つだけですが、デバッグ ツールバーには「HTTP 接続を確立しています」と 3 回表示されます。
122行目の変更のみ:
ADD VIEW: 上記と同じですが、ログに「HTTP 接続の確立」のみが 2 回表示されます DISPLAY VIEW: 上記と同じですが、ログに「HTTP 接続の確立」と 1 回のみ表示されます
また、118 行目に変更を追加します。
ADD VIEW: 上記と同じですが、「HTTP 接続を確立しています」というメッセージが 2 つになりました DISPLAY VIEW: 上記と同じで、ログ メッセージはまったくありません
更新: storage._setup() が 2 回呼び出され、storage.url() が 1 回呼び出されたようです。タイミングに基づいて、それぞれが s3 に接続していると思います。
これは、「HTTP 接続を確立しています」と 3 回表示される boto ロギングに反映されているようです。
sorl-thumbnail - 新しいsorl-thumbnailによる画像フィルタリング
古いウェブサイトを最新バージョンのDjangoにアップグレードしようとしていますが、sorl-thumbnailも更新する必要があります。
一部のテンプレートを新しい{%thumbnail ...%} {%endthumbnail%}形式に修正しましたが、組み込みフィルターとカスタムフィルター(またはプロセッサー)の両方を使用できません。サムネイルを白黒にするためのものと、彩度を50%に設定するための特注のものがありました。最新バージョンのsorl-thumbnailでこれを行うにはどうすればよいですか?
django - Sorl-サムネイルの悪いURL
指示に従ってsorl-thumbnailを設定しましたが、アプリでテンプレートタグを使用しようとすると、どの画像も表示されません。
URLが無効であるように見えますが、どの追加構成が必要かは明確ではありません。
次のような画像が生成されます。
「cache/...」はどのようにして画像のリクエストに解決されますか?これらのリクエストは、sorl-thumbnailではなく、私のアプリケーションに関連しています。
settings.pyの関連する行は次のとおりです。
これは私のテンプレートのコードです:
画像は確実にアップロードされており(upload_toで指定されたディレクトリを確認しました)、ファイルシステムキャッシュを使用しているときは、アプリに関連するディレクトリcache/に保存されていました。memcacheを使用するように変更して、それが役立つかどうかを確認しました。
django - sorlサムネイル+本番環境でのdjangoの問題
Djangoでsorlサムネイルを使用しています。私のローカルセットアップでは正常に動作しますが、本番環境ではサムネイルが作成されません。
私のコードは次のようになります。
ロギングを有効にすると、トレースは次のようになります。
ファイルがそこにあり、すべての人が読み取ることができるため、エラーはあまり役に立ちません。より明示的なエラーを取得する方法や、何を試して修正するかがわかりません。
そして、さらに厄介なのは、それが使用して動作するという事実ですmanage.py shell
サムネイルを作成しましたが、テンプレートコードを使用して作成することはありません。
誰?
javascript - Prettyphotoのウィンドウサイズを修正
djangoアプリのフォトギャラリーにprettyphotoを使用しています。私の画像には最大の高さ/幅(sorl-thumbnailを使用)がありますが、apect-ratiosは異なります。そのため、prettyphotoのウィンドウもそのアスペクト比を変更し、次/前の画像をロードするたびに、進む/戻るボタンの位置が変わります(移動します)。きれいな写真のウィンドウサイズを固定する方法はありますか?または、画像に境界線を追加して、画像の形式がたとえば正方形になるようにします。しかし、私は画像をトリミングしたくありません。
よろしくお願いしますジャック
python - django form-utils で django sorl-thumbnail を使用する
djangoフォームユーティリティでsorlサムネイルを実装するにはどうすればよいですか?
したがって、フォーム utils のドキュメントには、その ImageWidget について次のように記載されています。
(サムネイルは、sorl-thumbnail がインストールされている場合にのみ使用できます。インストールされていない場合は、フルサイズの画像が表示されます)。
しかし、私はそれを実装することはできないようです。モデルで sorl の ImageField を使用しようとしましたが、form-utils の ImageWidget が壊れてしまい、テンプレートにこれしかない場合、テンプレートでそれを使用することに頭を悩ませることができません。
form utils には、次のオプションがあります。
ImageWidget は、キーワード引数 template を受け入れます。これは、画像のサムネイルとファイル入力ウィジェットが相互にどのようにレンダリングされるかを定義する文字列です。テンプレート文字列には、可変補間マーカー %(input)s および %(image)s が含まれている必要があります。デフォルト値は %(input)s
%(image)sです
コードでは次のようになります。
しかし、私はまだそれを理解することはできません。