我想到了3种解决办法:
办法1:
把参数设置放在User里边。
class User(db.Model):
#用户相关属性
....
#各个参数设置属性
...
办法2:
用ReferenceProperty将用户和参数设置联系起来。
class User(db.Model):
#用户相关属性
....
class Settings(db.Model):
user = db.ReferenceProperty(reference_class=User,
collection_name='settings')
#各个参数设置属性
....
办法3:
用pickle把所有参数放入一个Property里边。
http://appengine-cookbook.appspot.com/recipe/pickledpropertyclass User(db.Model):
#用户相关属性
....
settings=db.PickledProperty()
问了一下 @
keakon ,他说:
『性能和空间占用上来说,3是最优的
实现上来说,1是最方便的,但是更改时比较麻烦,如果改动不频繁,建议用这种
2无论性能还是实现都是最差的』
最终,我还是选择了PickledProperty:
http://appengine-cookbook.appspot.com/recipe/pickledproperty