我需要在我的模型中保存来自数据存储中某个类的对象列表。
是否有任何简单的方法可以使用 ListProperty 和自定义属性进行存档,而无需进入 pickled/simplejson blob 数据?
我只想要这样的东西:
class Test:
pass
class model(db.Model):
list = db.ListProperty(Test)
查看 GAE 文档,我真的无法判断当前版本是否不可能。
我试图避免酸洗,因为它很慢并且有大小限制。
我需要在我的模型中保存来自数据存储中某个类的对象列表。
是否有任何简单的方法可以使用 ListProperty 和自定义属性进行存档,而无需进入 pickled/simplejson blob 数据?
我只想要这样的东西:
class Test:
pass
class model(db.Model):
list = db.ListProperty(Test)
查看 GAE 文档,我真的无法判断当前版本是否不可能。
我试图避免酸洗,因为它很慢并且有大小限制。
您只能将有限的一组类型直接存储在数据存储中。要存储您自己的类型,您需要以某种方式将它们转换为一种可接受的类型 - 酸洗是一种常见的方法,将其序列化为 JSON 也是如此。
大小限制不是酸洗独有的 - 1MB 是您可以插入的最大实体,无论字段和类型如何。
您可以通过创建测试模型/实体类型将测试对象直接保存在数据存储中。否则,您将不得不以某种方式对它们进行序列化(使用 pickle 或 json 之类的东西)
您可以有一个键列表,或者您可以为“测试”实体提供一个父级,该父级是您的“模型”类的实体