Hi folks, I'm trying to turn one uploaded image into several: a full-size and thumbnail (and more, eventually). Here's the model I'm playing with, just for testing:
class TestPhoto(models.Model): "This is only for testing. Delete it later and make a real photo model" title = models.CharField(max_length=100) pub_date = models.DateTimeField(auto_now_add=True) full_size = models.ImageField(upload_to="images/photos/%Y/%b/%d") thumbnail = models.ImageField(upload_to="images/photos/%Y/%b/%d", blank=True) Resizing is simple enough using a script off Django Snippets: def thumbnail(filename, size=(50, 50), output_filename=None): image = Image.open(filename) if image.mode not in ('L', 'RGB'): image = image.convert('RGB') image = image.resize(size, Image.ANTIALIAS) # get the thumbnail data in memory. if not output_filename: output_filename = get_default_thumbnail_filename(filename) image.save(output_filename, image.format) return output_filename That part works like a charm when I run it on save(), and the returned files end up exactly where they should be. But how do I get Django to recognize that output file as a File object? I've tried adding another ImageField to the model and using a save() method to populated it with the output_filename from thumbnail(). It gets the path right, but the url ends up being something like MEDIA_URL + self.full_size.path + "thumb.jpg" or media.mydomain.com/ home/chrisamico/webapps/media/images/photos/2008/Oct/23/ IMG_0460.thumb.jpg. That's a big 404. I could write a simple method to create the right url (since it's just full_size.url with .thumb.jpg on the end) but that would be repetitive for each size. Thanks as always for the help. --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Django users" group. To post to this group, send email to django-users@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/django-users?hl=en -~----------~----~----~----~------~----~------~--~---