如何上传图像并将其存储在db google app引擎中

时间:2015-06-08 02:15:07

标签: python google-app-engine google-cloud-datastore

您好我想知道如何从用户上传图片并使用此表单将其存储在数据库中(使用谷歌数据存储)

<form method='post'>
<input type='file' name='img'>
<input type='submit'>

我制作了一个db模型

from google.appengine.ext import db
class Photo(db.model):
     profile_pic = db.BlobProperty()

当我在网络应用程序中显示它时,名称只显示

ex:example.png

我想知道如何使用

上传它
from google.appengine.ext import db

不是

from google.appengine.ext import ndb

1 个答案:

答案 0 :(得分:0)

您可以使用blobstore和BlobReferenceProperty

class Image(db.Model): 
    primary_image = blobstore.BlobReferenceProperty()

然后你有一个上传处理程序,您可以使用http post:

添加图像
class UploadHandler(BaseRequestHandler,
               blobstore_handlers.BlobstoreUploadHandler):
   def post(self):

        for upload in self.get_uploads():
            try:
                img = Image()
                img.primary_image = upload.key()
                img.put()