2011-07-30 4 views
0

모델에 이미지 필드가 있습니다. 그 이미지를 다른 두 개의 필드 (thumb_big 및 thumb_small)로 두 번 복사 (크기 변경)해야합니다. Thumb_big는 225px 너비이고 높이는 무엇이든 될 수 있습니다. thumb_small은 65x50 픽셀입니다.장고 이미지 수정, 한 이미지 필드에서 다른 이미지 필드로

검색했지만 문제가 해결되지 않았습니다. PIL을 설치했습니다. 시도 django - imagekit, 다른 snipets.

위대한 링크도 알고 있다면, BTW 나는 장고 초보자입니다.

여기에 당신이 데이터베이스에 미리 경로를 저장해야하는 이유 아주 확실하지 않다 내 모델

class Photo(models.Model): 
    title = models.CharField(max_length=500) 
    pub_date = models.DateField(auto_now_add=True) 
    mod_date = models.DateField(auto_now=True) 
    slug_name = models.SlugField(max_length=500) 
    image = models.ImageField(upload_to='interview', blank=True) 
    thumb_big = models.ImageField(upload_to= 'interview/thumbs_big', blank=True) 
    thumb_small = models.ImageField(upload_to= 'interview/thumbs_small', blank=True) 
    category = models.CharField(max_length=200, blank=True) 
    details = models.TextField() 

    def __unicode__(self): 
     return self.title 

답변

1

입니다. 여러 개의 장고 축소판 응용 프로그램이 있습니다. 내 즐겨 찾기의 두는 다음과 같습니다

둘, 즉석에서 하고 표시를 썸네일을 생성하기위한 템플릿 태그를 사용하는 귀하의 장고 템플릿. http://thumbnail.sorl.net/examples.html#model-examples http://packages.python.org/easy-thumbnails/usage.html#models

당신이 정말 경로를 저장해야하는 경우 :

는 또한 썸네일 관리를 쉽게하기 위해 사용자 지정 데이터베이스 필드와 함께 모델의 미리보기 이미지에 이미지 업로드보기에서 두 축소판을 생성 한 다음 결과 파일 경로를 해당 데이터베이스 필드에 지정할 수 있습니다. 쉬운 미리보기 이미지와 같이 보일 것입니다 :

photo = form.save() 
from easy_thumbnails.files import get_thumbnailer 
thumbnailer = get_thumbnailer(photo.image) 
thumb = thumbnailer.get_thumbnail({'size': (100, 100)}) 
photo.thumb_big = thumb.name 
photo.save() 
+0

글쎄 그 멍청한데 내 모델이나 다른 곳에서이 글을 어디서 써야할까요? – themunna

+0

보기에서 양식이 유효한지 확인한 후. Django의 양식 작업을위한 표준 흐름은 다음과 같습니다. http://www.djangobook.com/en/2.0/chapter07/#b150 –

+0

감사합니다.이 게시물을 작성한 직후에 쉬운 축소판을 발견했습니다. 나는 그것을 사용했다. 아마도 지금은 내 자신을 쓰지 않을 것입니다. – themunna