【发布时间】:2018-10-21 06:41:37
【问题描述】:
我有模特
class MyModel(ndb.Model):
foo = ndb.StringProperty()
class OtherModel(ndb.Model):
baz = ndb.StringProperty()
ref = ndb.KeyProperty(kind=MyModel)
我构建了一个视图,可以在其中创建和修改这些模型实体,我希望 OtherModel 的 ref 字段是可选的,但是当我尝试提交并清空 ref 字段或删除旧值时我收到ndb.KeyProperty 的验证错误
我的更新逻辑如下:
for property in editableProperties:
# Lets suppose this parses values from a form in a request to the needed type
new_value = deserialize(property._kind, self.request.get(property._name))
setattr(item, property._name, new_value)
我尝试将 new_value 设置为 None 和空字符串。我怎样才能做到这一点?
【问题讨论】:
-
请附上完整的错误信息。此外,为调试目的尝试更简单的更新逻辑:
item.ref = new_value
标签: google-app-engine google-cloud-datastore app-engine-ndb