0

私のviews.py:

# obj is of Model subclass, image is its ImageField
timg = get_thumbnail(obj.image, "160x110", quality=50)
context['timg'] = timg
return render(request, '16_upload01.html', context)



私のテンプレート:

{% thumbnail timg "100x100" crop="center" as timg %}
    <img src="{{ timg.url }}" width="{{ timg.width }}" height="{{ timg.height }}">
{% empty %}
<p>No image</p>
{% endthumbnail %}


永遠に「画像なし」と表示されます。timgしかし、私はコンソールで見ることができます:

(Pdb) timg
<sorl.thumbnail.images.ImageFile object at 0x10f83a450>


また、settings.py で を設定THUMBNAIL_DEBUG = Trueしましたが、エラーが表示されません。なぜですか?


編集

まだサムネイル画像は表示されません


ビュー:

obj = Image.objects.filter(id=1)
timg = get_thumbnail(obj.image, "160x110", quality=50)
context['timg'] = timg
return render(request, '16_upload01.html', context)

テンプレート:

<img src="{{ timg.url }}" width="{{ timg.width }}" height="{{ timg.height }}">
4

1 に答える 1

0

サムネイルを 2 回取得しようとしています。ビューで を使用get_thumbnailして、テンプレートで を使用してもう一度{% thumbnail ... %}。これらはどちらも同じことを行うため (テンプレート タグはget_thumbnailバックグラウンドで使用されます)、どちらかを選択してください。

sorl のドキュメントを見ると、サムネイルを実装するさまざまな方法がわかります。結果のtimgサムネイル ファイル (どちらのアプローチを選択しても返される) にはurl、サムネイルを表示するために使用できる属性があります。

<img src="{{ timg.url }}" />
于 2013-05-27T20:43:57.687 に答える