2012-04-08 2 views
3

Я использую sorl-thumbnail, чтобы получить некоторые изображения для обрезки.Теги шаблона 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}}'>, изображение будет хорошо отображаться в браузере. У меня также есть scol-thumbnail внутри моего INSTALLED_APPS, и я синхронизирую базу данных и настраиваю таблицу thumbnail_kvstore.

Может кто-нибудь мне помочь. Что может привести к тому, что изображения не будут обрезаны или даже отображены?

+0

У вас установлен PIL или imagemagick? Вы вообще не ошиблись? –

+2

Вы импортируете 'sorl.thumbnail.ImageField', но используете' django.db.models.ImageField'. –

+0

@KayZhu PIL установлен отлично – dotty

ответ

3

Ваш код выглядит хорошо, поэтому проблема должна исходить из других частей.

Первое, что вы можете сделать, это установить THUMBNAIL_DEBUG = True в ваш settings.py и посмотреть, почему возникает ошибка.

Вы используете virualenv и PIL для библиотеки изображений? Убедитесь, что ваш PIL скомпилирован и установлен с jpeg и png/gif, который требует libjpeg и zlib.

Edit: Как @DanielRoseman отметил в комментарии, вы на самом деле с помощью django.db.models.ImageField, изменение

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

в

image = ImageField(upload_to="uploads") 

использовать sorl.thumbnail.ImageField вместо.

0

Попробуйте выполнить очистку или если это не удастся, очистите. Documentation

Это разрешило проблему для меня, когда я получал неожиданный результат. Возможно, это сработает для вас.

Смежные вопросы