在旧的谷歌appengine数据存储API“必需”和“默认”可以一起用于属性定义。使用NDB我得到一个为什么在ndb中需要和默认是互斥的?
ValueError: repeated, required and default are mutally exclusive.
示例代码:
from google.appengine.ext import ndb
from google.appengine.ext import db
class NdbCounter(ndb.Model):
# raises ValueError
count = ndb.IntegerProperty(required=True, default=1)
class DbCounter(db.Model):
# Doesn't raise ValueError
count = db.IntegerProperty(required=True, default=1)
我想实例化一个计数器,而无需指定值。我也想避免有人把这个值覆盖到None。上面的例子被构造。我可能没有必要的属性生活,而是添加一个增量()方法。尽管如此,我还是没有看到为什么要求和默认是相互排斥的。
它是一个错误或功能?
谢谢。我创建了http://code.google.com/p/appengine-ndb-experiment/issues/detail?id=236问题 – bastian