我正在尝试将照片上传到blobstore。我的代码与示例here
类似class Image(ndb.Model):
date = ndb.DateTimeProperty(auto_now_add=True)
user = ndb.UserProperty()
blob_key = blobstore.BlobReferenceProperty()
在我的UploadHandler中,我执行以下操作:
blob_info = self.get_uploads('file')[0]
image = Image()
image.user = users.get_current_user()
image.blob_key = blob_info.key()
但是,最后一行总是会导致以下错误:
TypeError: cannot concatenate 'str' and 'NoneType' objects
这让我发疯了。我可以上传图片,但我无法存储密钥!谁知道什么可能是错的?
答案 0 :(得分:0)
如果你想使用BlobReferenceProperty,你将不会将数据模型还原为db,如果你真的想使用ndb,你需要使用voscausa提到的BlobKeyProperty。我个人觉得db模型比ndb更简单,并且没有真正得到ndb的炒作
class Image(db.Model):
user = db.UserProperty()
blob_key = blobstore.BlobReferenceProperty()