1

私は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を使いたいのですが、これまで実装したことがありません。前もって感謝します!

4

2 に答える 2

1

ProductImage モデルは、models.Model の代わりに imagekit.models.ImageModel から継承する必要があります。

于 2010-07-31T19:39:46.560 に答える
1

これは、コードではなく、質問の書式設定の誤りである可能性があります。ただしIKOptions、モデル クラスにネストする必要があります。

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

また、ikflush を実行する前にINSTALLED_APPS、設定ファイルに ImageKit を追加しましたか?

于 2010-07-30T00:54:05.707 に答える