On Monday, 05 January 2009 00:51:03 Donn wrote: > I am stuck on the interface between a PIL Image and a > FilesystemStorage 'content' object. > > I can: img = Image.open(content) > But how do I pass 'img' back to Django for saving?
I have some kind of working example now. I won't say I savvy it properly, but it's a case of finding objects that FileSystemStorage.save will accept. This object needs a 'chunks' attribute. It's raw data must also be in binary format. So, I need to go from a PIL 'img' out to this magical object: You need this class from django.core.files.base import ContentFile And this: try: from cStringIO import StringIO except ImportError: from StringIO import StringIO In the code, insert: #Make a thing to hold our data o = StringIO() #convert the image to a binary file-like memory object img.save(o,'PNG') # We NEED this object because it has 'chunks' content = ContentFile(o.getvalue()) # Now the content is accepted. # CutsomImageStorage is my FileSystemStorage subclass, see OP. super( CustomImageStorage,self).save(name, content) HTH; any corrections for sheer stupidity? :) \d --~--~---------~--~----~------------~-------~--~----~ 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 django-users+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/django-users?hl=en -~----------~----~----~----~------~----~------~--~---