1

如何序列化我的模型。当 key 属性不重复时,我可以序列化。

模型看起来像:

class Properties(ndb.Model):
  propertyID = ndb.StringProperty(required=True)
  propertyParentKey = ndb.KeyProperty()
  propertyItems = ndb.KeyProperty(repeated=True)

我想做类似的事情

#get all in list
 fetched = model.Properties.query().fetch()

#to a list of dicts
 toSend = [p.to_dict() for p in fetched]

 #Serialize 
  json.dumps(stuff=toSend)

是否可以以某种方式序列化模型?如何处理关键属性列表?

4

1 回答 1

2

为什么不构建自己的对字典方法友好的 json?像这样的东西可能就足够了:

def custom_to_dict(self):
    return {
      'propertyId': self.propertyID,
      'propertyParentKey': self.propertyParentKey.urlsafe(),
      'propertyItems': [key.urlsafe() for key in self.propertyItems]
    }

https://developers.google.com/appengine/docs/python/ndb/keyclass#Key_urlsafe

于 2013-10-18T02:45:47.170 回答