在GAE数据存储区中建模多个选项

时间:2012-02-19 08:58:21

标签: python google-app-engine datastore

App Engine文档提供了如何强制执行数据存储区实体属性的一组选择的示例:

from google.appengine.ext import db

class Pet(db.Model):
    type = db.StringProperty(required=True, choices=set(["cat", "dog", "bird"]))

我想强制执行一组可能的值,但允许选择多个值。我遇到了StringListProperty属性类,但我不知道要强制执行一组可能的选择。

除了明确强制执行模式之外,我希望能够通过数据存储管理界面中的复选框修改实体。现在,如果我使用StringListProperty,则无法编辑数据存储区管理员中的相应字段。我所描述的可能吗?

1 个答案:

答案 0 :(得分:0)

ndb(http://code.google.com/p/appengine-ndb-experiment/) 将在GAE 1.6.3中正式提供(见https://plus.google.com/111042085517496880918/posts/9uJXHj8iiqV

您可以为该属性编写验证函数,请参阅 http://code.google.com/p/appengine-ndb-experiment/source/browse/ndb/model.py#112