1

在我的应用程序中,我有一个这样的模型:

class MyModel(ndb.Model):
    entity_key_list = ndb.KeyProperty('k', repeated=True, indexed=False)
    entity_key_num = ndb.ComputedProperty('n', lambda self: len(self.entity_key_list))
    verified = ndb.BooleanProperty('v')

验证为假时是否可以拥有 entity_key_num 属性?

4

1 回答 1

2

None如果不是verified这样,您可以返回:

entity_key_num = ndb.ComputedProperty('n', lambda self: len(self.entity_key_list) if not self.verified else None)

如果您根本不想拥有该值None并动态删除或创建此属性,那么您将不得不使用ndb.Expando可以做所有这些花哨的东西的类。请注意,您将无法删除 ,ComputedProperty因此您必须自己跟踪该值。

于 2013-04-25T17:09:28.820 回答