gpt4 book ai didi

python - 尝试将字符串属性设置为模型另一部分的 md5 的默认值

转载 作者:太空宇宙 更新时间:2023-11-03 19:27:49 26 4
gpt4 key购买 nike

我想做的是在将图像存储到数据存储时即时执行,我想用图像的 md5sum 填充一个条目,以便稍后在输出图像时使用。我觉得这是一个虚拟错误,我已经忽略了,但现在看不到。

代码片段:

import hashlib

from google.appengine.api import urlfetch
from google.appengine.ext import db

def getimg(url):
result = urlfetch.fetch(url)
if result.status_code == 200:
return result.content
else:
return None

class ImageBlobs(db.Model):
img = db.BlobProperty(default=None)
last_update = db.DateTimeProperty(auto_now=True)
etag = db.StringProperty(default=hashlib.md5(img).hexdigest())

img = ImageBlobs(img=getimg('http://www.a-real-domain.com/a-working-image.png'))
img.put()

错误:

TypeError: must be convertible to a buffer, not BlobProperty

关于如何解决我的小问题的想法/建议?

最佳答案

默认值不会这样工作。您需要一个DerivedProperty :

@DerivedProperty
def etag(self):
return hashlib.md5(self.img).hexdigest()

关于python - 尝试将字符串属性设置为模型另一部分的 md5 的默认值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7420225/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com