GitHubじゃ!Pythonじゃ!

GitHubからPython関係の優良リポジトリを探したかったのじゃー、でも英語は出来ないから日本語で読むのじゃー、英語社会世知辛いのじゃー

jazzband

sorl-thumbnail – Djangoのサムネイル

投稿日:

Djangoのサムネイル https://sorl-thumbnail.readthedocs.io

Djangoのサムネイル。

機能の概要

  • Djangoがサポートしているバージョンのポリシーに従ったDjango 1.11,2.0 、および2.1のサポート
  • Python 3のサポート
  • ストレージのサポート
  • ピローImageMagickPILワンドpgmagickvipsthumbnailのプラグ可能エンジンサポート
  • プラグ可能なKey Value Storeのサポート(AWSによるキャッシュされたdb、redis、dynamodb)
  • プラガブルバックエンドのサポート
  • 削除の可能性を持つ管理者の統合
  • ダミー生成(プレースホルダ)
  • 柔軟でシンプルな構文は、HTMLを生成しません
  • サムネイルを削除するモデルのImageField
  • CSSスタイルのクロッピングオプション
  • スマートクロッピングを元に戻し、クロップ時に画像からボーダーを削除する
  • 垂直位置のマージン計算
  • 代替解像度のサムネイルのバージョン

ドキュメント(最新版)で詳細を読む

開発者

これはジャズバンドプロジェクトです。 貢献することにより、あなたはコントリビュータ行動規範を遵守し、 ガイドラインに従うことに同意します。

新しい機能を提案したい場合は、自由に新しいプルリクエストを作成してください。 開発サポートが必要な場合や、他の開発者と議論したい場合は、freenode.netまたはGitterのチャンネル#sorl-thumnbnailに参加してください。

リリース更新などの深い開発については、Googleグループのメーリングリストをご利用ください。

テスト

テストはtoxとpytestで実行する必要があります。 toxを実行すると、すべての環境ですべてのテストが実行されます。 しかし、tox -e <env>で特定の環境を実行することは可能ですが、すべての環境のリストはtox -lで見つけることができます。 これらのテストでは、ドキュメントに定義されているさまざまなエンジンの依存関係が必要です。 これらの依存関係を、リポジトリ内のVagrantファイルを使用して、迷惑なイメージにインストールすることは可能です。

ユーザーサポート

sorl-thumbnailを使用してヘルプが必要な場合は、 http: //stackoverflow.com/questions/tagged/sorl-thumbnailを参照して、sorl-thumbnailタグで質問を投稿してください。

使い方

コードを取得する

最新の安定版のコードを取得するには、 ‘pip’を使用します。

$ pip install sorl-thumbnail

あなたのプロジェクトにインストールする

次に、プロジェクトの設定の ‘INSTALLED_APPS’セクションに ‘sorl.thumbnail’を登録します。

INSTALLED_APPS = (
    'django.contrib.auth',
    'django.contrib.admin',
    'django.contrib.sites',
    'django.contrib.comments',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.contenttypes',

    'sorl.thumbnail',
)

テンプレートの使用

すべての例では、テンプレートに最初にサムネイルテンプレートタグを読み込むことを前提としています。

{% load thumbnail %}

簡単な使い方。

{% thumbnail item.image "100x100" crop="center" as im %}
    <img src="{{ im.url }}" width="{{ im.width }}" height="{{ im.height }}">
{% endthumbnail %}

ドキュメントの「 テンプレートの例」の節の例を参照してください。

モデル使用法

ImageFieldを使用すると、削除されたときに、キー値ストア内の参照とそのサムネイル参照、およびサムネイルファイルが自動的に削除されます。

from django.db import models
from sorl.thumbnail import ImageField

class Item(models.Model):
    image = ImageField(upload_to='whatever')

ドキュメントの「 モデルの例」のセクションの例を参照してください。

低レベルのAPI

あなたは ‘get_thumbnail’を使うことができます:

from sorl.thumbnail import get_thumbnail
from sorl.thumbnail import delete

im = get_thumbnail(my_file, '100x100', crop='center', quality=99)
delete(my_file)

ドキュメントの「 低レベルのAPIの例」の節の例を参照してください。

他のサムネールと組み合わせて使用​​する

代わりに、従来の{%load thumbnail%}ではなく{%load sorl_thumbnail%}でtemplatetagsを読み込みます。 これは、templatetagモジュールに同じ名前( thumbnail )を使用する複数のサムネイルライブラリを使用するプロジェクトで特に役に立ちます。

{% load sorl_thumbnail %}
{% thumbnail item.image "100x100" crop="center" as im %}
    <img src="{{ im.url }}" width="{{ im.width }}" height="{{ im.height }}">
{% endthumbnail %}

よくある質問

Amazon S3でとても遅いです!

Amazon S3バックエンドの実装に関連している可能性があります.S3 APIを幅広く使用するサムネイルを生成しようとすると、既存のサムネイルがある場合、ストレージバックエンドレビューによる問題#351を参照してください。

ストレージバックエンドを微調整したくない場合の迅速な回避策は次のとおりです。

THUMBNAIL_FORCE_OVERWRITE = True

したがって、S3 APIを過度にクエリすることは避けられます。







-jazzband
-

執筆者:

jazzband

sorl-thumbnail – Djangoのサムネイル

投稿日:

(さらに…)







-jazzband
-

執筆者: