在Google App Engine上使用Django模板显示图片
我正在使用谷歌应用引擎和Django来制作一个小应用,这个应用有以下功能:
- 上传图片,
- 显示图片,
- 处理图片(旋转)。
完成第一部分后,现在我在第二部分遇到了问题,我需要显示图片。
我已经做了所有的准备,获取了图片的键值,但图片就是不显示。
我只能看到我保存在数据存储中的图片标题。
这是我的代码:
<ul>
{% for image in image.all %}
<li>{{ image.title }} </li>
<li> <img src="/pictures/models.{{image.key}}"/> </li>
{% endfor %}
</ul>
1 个回答
1
假设你已经做了以下几件事:
- 你把图片上传到了一个叫做blobstore的地方
- image.key是这个blobstore的一个标识符
- 你有一个处理程序,叫做BlobstoreImageHandler,用于处理路径为
/pictures/models\.(.*)/
的请求
那么你可以这样做:
class BlobstoreImageHandler(blobstore.handler.BlobstoreDownloadHandler):
def get(self, resource):
resourse = str(urllib.unquote(resource))
blob_info = blobstore.BlobInfo.get(resource)
self.send_blob(blob_info)
这段代码直接来自于http://code.google.com/appengine/docs/python/blobstore/overview.html#Serving_a_Blob