3

sorlサムネイルのドキュメントはまだget_thumbnail関数を参照していますが、これはv.3.2.5には存在しません。(cannot import name get_thumbnail

私の人生では、この関数が何に変更されたか、またはこのバージョンのsorlのPythonコードでサムネイルを生成する方法についての参照を見つけることができません。何かアドバイス?

4

2 に答える 2

2

私の特定のケースでは、ThumbnailFieldを次のようにextra_thumbnails定義して使用しました。

class SomeModel(models.Model):
    # other kwargs omitted for clarity
    image = ThumbnailField(extra_thumbnails={
                           'inline_preview': {'size': (600,400)},
                           'small_thumb': {'size': (75,75), 'options':['crop', 'sharpen']})

フィールドには、驚くべきことに、次の名前の属性としてオプションimageによって定義された画像の辞書があります。extra_thumbnailsextra_thumbails

somemodel_instance.image.extra_thumbnails['inline_preview']
于 2011-03-24T14:39:48.410 に答える
1

さて、数週間前、私は以前にこの問題を実際に解決したことを発見し、覚えていなくてもそれについての短いブログ投稿を書きました-頭を叩きます。探しているURLだけの場合は、次のように実行できます。

from solr.thumbnail.main import DjangoThumbnail

img = imageObject # a normal image url returned from an ImageField
size = (100,100) # any tuple 
img_resize_url = unicode(DjangoThumbnail(img, size))

少しハックですが、extra_thumbnailsフィールドを調整しなくても任意のサムネイルサイズを呼び出すことができるという意味で、Chrisのソリューションよりも優れています。そうは言っても、sorlからの内部インポートが必要ないという意味で、彼のソリューションはよりクリーンであると思いますが、どちらの方法でも機能するはずです。

于 2011-04-20T21:35:09.073 に答える