> > and the my show_image function is : > > def show_image(): > return response.download(request,dal_db) >
That's the problem -- response.download() calls dal.Field.retrieve(), which assumes the filename is encoded via base64.b16encode (i.e., it assumes the file was stored using dal.Field.store(), which encodes the filename). Instead of manually creating the filename, you could use this procedure: http://web2py.com/books/default/chapter/29/6#Manual-uploads. Just make the filename exactly what you want the downloaded filename to be (including the extension), and do the insert into the upload field -- it should automatically create the encoded name, store the name in the upload field, and store the image in the blob field. In this case, the image should be a file stream, and I think fetch will return a string, so you might need to do: import cStringIO profile_image = cStringIO.StringIO(result.content) Anthony

