添加必需的属性选项不起作用

时间:2013-12-01 21:34:45

标签: google-app-engine google-cloud-datastore

我正在尝试向我的模型添加属性选项。我有一个StringProperty,我添加了required=True,但我仍然能够创建一个必需字段为空的对象。

我在管理员和特定模型的更新表单中尝试过,所以不确定我做错了什么?

1 个答案:

答案 0 :(得分:0)

你可以创建它,但是你可以put吗?

class x(ndb.Model):
    author = ndb.StringProperty(required=True)

a = x()
a.put()

失败:BadValueError: Entity has uninitialized properties: **author**

在必需的属性作者上设置值允许您保存它:

a.author = "some_value"

现在可以成功。

key = a.put()
现在

key

Key('x', 5707702298738688)

甚至key.urlsafe()

ahNzfnNoYXJlZC1wbGF5Z3JvdW5kcg4LEgF4GICAgICArpkKDKIBEDYwNTM4Njc2MzY2NTQwODA

详细了解storing data here.