# Coding = UTF-8
Import stringio
From Pil Import image
From Django. Http import httpresponse
From Django. Shortcuts import render_to_response
Upload_url = 'photo/upload /'
Def upload (request ):
Buf = request. Files. Get ('photo ', none)
Data = Buf. Read ()
F = stringio. stringio (data)
Image = image. Open (f)
Image = image. Convert ('rgb ')
Name = '% S % s' % (upload_url, Buf. Name)
Image. Save (file (name, 'wb '), 'png ')
Return httpresponse ('success ')
An exception occurs when Buf ['content'] is used to replace Buf. Read () with Buf ['filename'] instead of BUF. Name.
"<Type 'exceptions. typeerror'>
'Inmemoryuploadedfile' object is unsubscriptable
HtmlCode:
<Form method = "Post" Action = "/Photo/upload/" enctype = "multipart/form-Data">
Select image: <input type = "file" name = "photo"/> <br>
<Input type = "Submit" value = "Upload">
</Form>
Enctype = "multipart/form-Data" is used to upload large files, including non-ASCII codes, in binary format