2010-07-29 33 views
1

我在Django應用程序中實現ImageKit,並且我已經正確設置了一切,以我的知識。當我運行命令Django中的ImageKit

$python manage.py ikflush main 

該命令似乎運行良好,但似乎沒有發生。沒有圖像被調整大小或存儲並且無法訪問。

main.models.py:

class ProductImage(models.Model): 
    product = models.ForeignKey(Product) 
    image = models.CharField(max_length=255, null=True, blank=True) 
    original = models.ImageField(upload_to='uploads/product-images/zoom/') 

    class IKOptions: 
     spec_module = 'main.specs' 
     cache_dir = 'uploads/cache' 
     image_field = 'original' 

main.specs.py:

from imagekit.specs import ImageSpec 
from imagekit import processors 

class ResizeSmall(processors.Resize): 
    width = 230 
    height = 289 
    crop = False 

class SmallImage(ImageSpec): 
    access_as = 'small_image' 
    pre_cache = True 
    processors = [ResizeSmall] 

模板:(打印無)

{% for image in images %} 
    {{ image.small_image }}<br /> 
{% endfor %} 

有沒有人有任何想法如何調試呢?我真的想爲此使用ImageKit,但我從未實現過它。 提前致謝!

回答

1

您的ProductImage模型需要繼承自imagekit.models.ImageModel而不是models.Model。

+1

就是這樣!你是男人!現在,如果我能得到Jpeg支持在PIL中工作......哈哈。 – thomallen 2010-08-01 20:22:41

1

這可能只是格式錯誤而不是代碼中的問題。但IKOptions應嵌套在模型類:

class ProductImage(models.Model): 
    # fields, etc... 
    class IKOptions: 
     # ... 

此外,在運行之前ikflush,你在你的設置文件添加到ImageKit INSTALLED_APPS

+0

是的,這只是從stackoverflow呈現它的錯誤。我現在已經修復了它,因此它應該反映它現在嵌套在模型中。 我也有'imagekit'添加到INSTALLED_APPS – thomallen 2010-07-30 15:56:20

相關問題