0

ImageKit をモデルに適用して ImageField のサムネイルを作成しようとすると、何らかの理由でエラーが発生します。ここで見つけることができるDjango用のImageKitライブラリを使用しています

私のコードは以下です:

from django.db import models
from PIL import Image
import os
from django.contrib import admin
from imagekit.models import ImageSpecField
from imagekit.processors import ResizeToFill

# Create your models here.
class ResidentialReference(models.Model):
    image = models.ImageField(upload_to='images', blank="true",null="true")
    thumbnail = ImageSpecField(source='image',
                               processors=[ResizeToFill(100,50)],
                               format='JPEG',
                               options={'quality':60})

    title = models.CharField(max_length = 1000, default = 'Title here...' )
    postcode = models.TextField(max_length = 1000, default='Postcode here...')
    description = models.TextField(max_length = 12000, default = 'Technical Description here...')
    equipment = models.TextField(max_length = 1000, default = 'Equipment here...')
    output = models.TextField(max_length = 1000, default = 'Rated Output here...')
    partnership = models.TextField(max_length = 12000, default = 'Viessmann partnership details here...')



    def __unicode__(self):
        return self.title

    def create_thumb(self):
        residentialReference = ResidentialReference.objects.all()[0]
        print residentialReference.thumbnail.url
        print residentialReference.thumbnail.width
4

1 に答える 1

5

このエラーは ImageKit とは関係ありません。

独自の定義内でクラスを参照しようとしています。そのコードは、クラスが定義されているときに実行されますが、その時点では ResidentialReference は存在しません。

そのコードをメソッドに入れるか、クラスから完全に取り出します。

于 2015-04-29T11:00:37.040 に答える