1

我需要在我的模型中保存来自数据存储中某个类的对象列表。

是否有任何简单的方法可以使用 ListProperty 和自定义属性进行存档,而无需进入 pickled/simplejson blob 数据?

我只想要这样的东西:

class Test:
     pass

class model(db.Model):
     list = db.ListProperty(Test)

查看 GAE 文档,我真的无法判断当前版本是否不可能。

我试图避免酸洗,因为它很慢并且有大小限制。

4

3 回答 3

1

您只能将有限的一组类型直接存储在数据存储中。要存储您自己的类型,您需要以某种方式将它们转换为一种可接受的类型 - 酸洗是一种常见的方法,将其序列化为 JSON 也是如此。

大小限制不是酸洗独有的 - 1MB 是您可以插入的最大实体,无论字段和类型如何。

于 2009-08-20T08:07:07.533 回答
0

您可以通过创建测试模型/实体类型将测试对象直接保存在数据存储中。否则,您将不得不以某种方式对它们进行序列化(使用 pickle 或 json 之类的东西)

于 2009-08-20T04:35:03.107 回答
0

您可以有一个键列表,或者您可以为“测试”实体提供一个父级,该父级是您的“模型”类的实体

于 2009-09-18T01:04:18.557 回答