按密钥值查询NDB

2024-03-28 15:58:29 发布

您现在位置:Python中文网/ 问答频道 /正文

初次使用pythonndb。在

我有这样的东西:

class User(ndb.Model):
    seen_list = nbd.KeyProperty(kind=Survey, repeated=True)

class Survey(ndb.Model):
    same = ndb.StringProperty(required=True)

我希望能够查询没有看到某些调查的用户。在

我现在要做的是:

^{pr2}$

这不起作用。正确的方法是什么?是否应该先查询调查列表以获取具有特定名称的调查的密钥?是的!=零件正确?在

我找不到任何类似的例子。在

谢谢。在


Tags: truemodelrepeatedsurveylistclasssameseen
1条回答
网友
1楼 · 发布于 2024-03-28 15:58:29

不幸的是,如果你的调查是一个重复的财产,它不会工作的方式。当您查询一个重复的属性时,数据存储会尝试列表中的每个条目,如果其中一个有效,它将返回该条目。当你这么说的时候!=调查名称1”,如果您的列表中至少有一个条目不是“调查名称1”,那么它将返回为正值,即使另一个结果是“调查名称1”。在

如果你来自SQL背景,我知道。。。。只对你的查询进行程序化求值。它来自这样一个事实:对于重复值,大表“展平”结果,这意味着它为重复属性中的每个值创建一个条目。因此,当它扫描时,它最终会找到一个“正确”的行,从那里获取object键,并返回该对象。在

相关问题 更多 >