Python AppEngine中的非数据存储类型列表?

Python AppEngine中的非数据存储类型列表?,python,google-app-engine,orm,Python,Google App Engine,Orm,我在建一个AppEngine模型班。我需要一个简单的元组列表: class MyTuple(object): field1 = "string" field2 = 3 class MyModel(db.Model): the_list = db.ListProperty(MyTuple) 这不起作用,因为AppEngine不接受MyTuple作为有效字段 我能想到的解决办法是: 使MyTuple扩展db.Model。但这不意味着列表中的每个条目都将存储在专用的MyTuple表中吗

我在建一个AppEngine模型班。我需要一个简单的元组列表:

class MyTuple(object):
  field1 = "string"
  field2 = 3

class MyModel(db.Model):
  the_list = db.ListProperty(MyTuple)
这不起作用,因为AppEngine不接受MyTuple作为有效字段

我能想到的解决办法是:

  • 使MyTuple扩展db.Model。但这不意味着列表中的每个条目都将存储在专用的MyTuple表中吗

  • 让它成为字符串列表,这是MyTuple的“序列化”形式;添加解析(非序列化)代码。恶心

  • 维护两个列表(一个字符串,一个整数)。又恶心


  • 我缺少的任何其他解决方案?

    应用程序引擎补丁中有一个FakeModelListProperty和FakeModel(从ragendja.dbutils导入)。从FakeModel派生MyTuple并设置字段=('field1','field2')。这些字段存储在列表中时将自动转换为JSON,因此您可以在文本区域中手动编辑它们。当然,这只适用于基本类型(字符串、整数等)。如果这还不够,请查看源代码