Hi,

the form sends the picture to S3 and then S3 calls you on an URL which you 
specify with “ success_action_redirect”. This should point to an URL on your 
server where you then store the key/hash which will be provided in the URL.

Your code uses POST data but S3 will put the metadata in the URL (=GET) 
(bucket, key and etag)

So just make sure that your forms posts to S3 and you define the 
success_action_redirect URL.

I think you actually don’t need the S3StorageBackend since you are not storing 
anything or at least it does not actually pass your server.

hope that helps!

Cheers
Ivo


On Jan 1, 2012, at 12:25 , Chris Hasenpflug wrote:

> I have a model with an ImageField and am using django-storages
> S3BotoStorage backend. To reduce load on the server, I'm using
> Amazon's S3 Browser Upload functionality[1] to send images directly to
> S3. In order to create the model, my plan is have another view take
> the uploaded key and save a model instance of my image.  Currently my
> view code looks something like this:
> 
> def add_existing_image(request):
>    ...
>    image_key = request.POST.get('image_key', None)
>    im = default_storage.open(image_key)
>    i = Image(image=im, owner=user)
> 
> However, this seems to re-save the image on S3. I was hoping that
> since I'm not directly reading the file it would not need to do so
> behind the scenes, but it is. Since the goal is to not incur that
> overhead, how should I go about creating model instances of these
> files that already exist in my storage?
> 
> [1] http://aws.amazon.com/articles/1434
> 
> -- 
> 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.
> 

-- 
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.

Reply via email to