objectify v6文档说:
新的SDK不支持NOT和IN过滤器。你会得到一个 如果您尝试执行时发生错误 ofy()。load()。type(Thing.class).filter(“ field!=”,value)或 filter(“字段IN”值)。
即使在objectify v5中,我们是否应该远离使用NOT或IN过滤器,看起来还是一样吗?
是否有关于为什么不再支持这些信息的信息?是否有其他方法可以实现类似类型的查询?具体来说,是IN查询。如果您说出需要查询所有用户ID的用户ID列表,则该功能非常有用。
答案 0 :(得分:2)
无论如何,这些只是方便的过滤器,它们被转换为其他过滤器的组合。
!=(不等于)和IN(成员资格)操作由以下方式实现 使用“或”运算组合其他过滤器。首先,
https://cloud.google.com/appengine/docs/standard/python/ndb/queries#neq_and_in
<div class="main-content"></div>
被实现为property != value
(property < value) OR (property > value)
被实现为property IN [value1, value2, ...]
因此您可以将所有(property == value1) OR (property == value2) OR ...
和!=
过滤器都转换为该过滤器