gpt4 book ai didi

python - 覆盖 ndb 属性的默认 _get_for_dict()

转载 作者:太空宇宙 更新时间:2023-11-04 05:26:56 25 4
gpt4 key购买 nike

我很难更改默认的 _get_for_dict() 方法。这是我的代码目前的样子:

class ImageProperty(ndb.BlobKeyProperty):

def _get_for_dict(self, entity):
value = super(ImageProperty, self)._get_for_dict(entity)
if value:
return images.get_serving_url(value)
else:
return None

我不太了解覆盖方法的概念,也不太了解 ndb 自己的问题......基本上我想做的是:将我的数据存储 key 存储为 BlobKeyProperty,但是当将其作为字典检索时,我想获取图像服务 url。

非常感谢

最佳答案

我还没有尝试过,但我认为作为_from_base_type 钩子(Hook)会更好:

class ImageProperty(ndb.BlobKeyProperty):
def _from_base_type(self, value):
return images.get_serving_url(value)

如果我理解documentation正确地,此 API“堆栈”,因此您无需在父类(super class) (BlobKeyProperty) 上调用 _from_base_type。我猜 ndb handles that for you .就我个人而言,我认为当 super 似乎可以正常工作时,这对于 API 来说有点奇怪……但是……我猜就是这样。

关于python - 覆盖 ndb 属性的默认 _get_for_dict(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38382149/

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