我有一个具有ReferenceProperty类型属性的模型,我希望能够通过没有此属性的实体进行过滤。你无法按照这样的方式进行过滤,但是你可以这样过滤:
Entity.all().filter('property =', None)
是否可以将ReferenceProperties设置为None?或者是否会引发异常,因为None与属性定义中引用的对象的类型不同?
无法在此处的文档中找到答案:http://code.google.com/appengine/docs/python/datastore/typesandpropertyclasses.html#ReferenceProperty
答案 0 :(得分:3)
是的,你可以。
>>> e = Entity()
>>> e.ref = None
>>> e.put()
>>> # wait few secs for datastore to complete write op
>>> e.key() in [e.key() for e in Entity.all().filter('ref =', None)]
True