On 2013-07-08, at 13:26 , Hélio Miranda wrote:
> ok, I have my view like this:
> *def view(request, id):*
> *    fs = mongoengine.fields.GridFSProxy()*
> *    foto = fs.get(id=ObjectId(id))*
> *    legenda = foto.legend*
> *    *
> *    array = [foto.read(), legenda]*
> *    return HttpResponse(array)*
> 
> But before I had to go to the image url this:
> *url(r'^view/<GridFSProxy: (?P<id>\w+)>', 'rest.views.view'),*
> 
> And now for access to the image and caption will as I do?

Look, you can't do that, you're returning a Response directly which
means this is an HTTP resource and HTTP does not work this way, you
can't return multiple HTTP resources at once.

So you've got two choices:
* Return a master resource (an HTML page with the caption) and have *it*
  fetch the picture separately
* Return an embedding resource, an HTML page with the caption and the
  image data embedded as base64.

You might also be able to embed the caption in the image metadata
(e.g. the Exif.Image.ImageDescription or Exif.Photo.UserComment fields)
but I don't know any browser which'd display these.

The second will be way less bandwidth-efficient, though it will save a
single HTTP roundtrip.

For some reason I don't get Nick has been talking about Python-level
returning multiple values, that will not work.

-- 
You received this message because you are subscribed to the Google Groups 
"Django users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to django-users+unsubscr...@googlegroups.com.
To post to this group, send email to django-users@googlegroups.com.
Visit this group at http://groups.google.com/group/django-users.
For more options, visit https://groups.google.com/groups/opt_out.


Reply via email to