양식을 사용하여 이미지 (JPG)를 업로드 한 다음 해당 이미지를 Rackspace 'Cloud Files'또는 Amazon 'S3'으로 보내기 만하면됩니다.Django 업로드 이미지 - 양식이없는 Rackspace/S3에서 조작하지 않음
- 파일을 조작하지 않음.
- 하나 :
- 디스크에 번호 저장은 메모리에 모든 것이
- 이미지 크기가 75킬로바이트
업데이트 (두주의 사항)를 초과하지 않습니다 (클라우드 서버에서 호스팅하고) : 전화 앱에서 데이터를 게시 할 때도 작동해야합니다.
- 2 개 : Rackspace 클라우드 파일과 S3 (CF로 시작)로 전송해야합니다.
아래 코드는 작동하지만 너무 무거 우므로.
import cloudfiles as cf
def uploadImage(request, id):
cf_con = cf.get_connection(username='YYY', api_key='XXX', serviceNet=True)
container = cf_con.get_container('container_name')
file = request.FILES["item_photo"]
f = StringIO(file.read())
f = Image.open(f)
### Only works if I resize for some reason, otherwise uploads a broken file
image = f.resize((600,600), Image.ANTIALIAS)
o = StringIO()
image.save(o, "JPEG", quality=80)
image = o.getvalue()
file_name = "%s/%s" % (id, '600x600.jpeg')
### This simply uploads to Rackspace Cloud files.
put_file(container, file_name, image)
정말 고마워요, 모두가 잘 희망 ...
라.
혼란 스럽네요, 예제 코드가 이미지의 크기를 조정하지만 설명에서 _ 파일을 조작하지 못했습니다. 무엇 이니? 이미지의 크기를 조정하려면 현재 수행중인 작업이 많이 필요합니다. –
고맙습니다 @stuart, 이미지 크기를 조정하고 싶지 않습니다. 조작하지 않고 업로드하려고했지만 위의 코드가 작동하지 않지만 너무 무거워서 크기가 조정 된 파일을 업로드했습니다. 완벽한 세계에서 나는 간단히 다음을 원합니다 : 'file = request.FILES [ "item_photo"]' 'file_name = "% s/% s"% (id, '600x600.jpeg')' 'put_file (container, file_name, file)' 그러나 그것은 나를 위해 작동하지 않습니다. – Danny
분류 됨. 도와 주셔서 감사합니다. @stuart. – Danny