3

いくつかの画像を切り抜くためにsorl-thumbnailを使用しています。

私はこのようなモデルを持っています

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

class Photo(models.Model):
    image = models.ImageField(upload_to="uploads")

そして私のテンプレートの中に私は持っています

{% load thumbnail %}

{% thumbnail photo.image "200x100" as im %}
    <img src="{{ im.url }}">
{% endthumbnail %}

これは何も出力しません。私がそうするならば<img src='{{photo.image.url}}'>、画像はブラウザ内でうまく表示されます。また、INSTALLED_APPS内にsorl-thumbnailがあり、データベースを同期して、thumbnail_kvstoreテーブルを設定しています。

誰かが私を助けてくれませんか。画像がトリミングされない、または表示されない原因は何ですか?

4

2 に答える 2

3

あなたのコードはうまく見えるので、問題は他の部分から来るはずです。

最初にできることは、を設定THUMBNAIL_DEBUG = Trueしてsettings.py、エラーが発生する理由を確認することです。

virualenvPILを画像ライブラリに使用していますか?PILがコンパイルされ、インストールされてjpegいることをpng/gif確認libjpegしてくださいzlib

編集:@DanielRosemanがコメントで指摘したように、あなたは実際に使用していてdjango.db.models.ImageField、変更しています

image = models.ImageField(upload_to="uploads")

image = ImageField(upload_to="uploads")

代わりに使用しsorl.thumbnail.ImageFieldます。

于 2012-04-08T23:56:13.677 に答える
0

クリーンアップを実行してみてください。失敗した場合は、クリアしてください。ドキュメンテーション

これにより、予期しない出力が得られたときに問題が解決しました。多分それはあなたのために働くでしょう。

于 2012-04-09T02:14:05.317 に答える