2

デフォルトの_get_for_dict()メソッドを変更するのに苦労しています。私はあまり...メソッドをオーバーライドし、iself NDBとのトラブルを持つための概念に 基本的に私がやりたくないよ何ndbプロパティのデフォルトの_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 

: これは私のコードは、現時点では見えるもので保管してください私のDatastore KeyをBlobKeyPropertyとして使用しますが、dictとして取得する場合は、イメージサービスURLを取得します。

どうもありがとう

答えて

1

私はこれを試していないが、私はこれは_from_base_typeフックとして良いだろうと思い

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

私が正しくdocumentationを理解していれば、このAPI」スーパークラス(BlobKeyProperty)で_from_base_typeを呼び出す必要はありません。私はndbhandles that for youだと思います。個人的には、superがうまくいくような気がするのですが、これはちょっと変わったAPIだと思っています...しかし、それは私の推測です。

+0

ありがとうございます、うまくいくようです – lkshrk

関連する問題