Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/matlab/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何在不知道类名的情况下使用NDB查询_Python_Google App Engine_Google Cloud Datastore_App Engine Ndb - Fatal编程技术网

Python 如何在不知道类名的情况下使用NDB查询

Python 如何在不知道类名的情况下使用NDB查询,python,google-app-engine,google-cloud-datastore,app-engine-ndb,Python,Google App Engine,Google Cloud Datastore,App Engine Ndb,我正在Google app Engine上编写一个Python应用程序,我需要一个ndb查询,但问题是查询可以在不同的类类型上,因此我正在寻找一个方法,而不是clss.query()。我需要clss作为变量。我还可以使用一个过滤器吗?事实上,有一种方法可以做到这一点,该方法在: 您还可以使用筛选器,方法是将筛选器作为查询中的参数传递: ndb.Query(kind=clss, filters=...) 或者像通常那样对查询应用过滤器(): ndb.Query(kind=clss).filter

我正在Google app Engine上编写一个Python应用程序,我需要一个ndb查询,但问题是查询可以在不同的类类型上,因此我正在寻找一个方法,而不是
clss.query()
。我需要
clss
作为变量。我还可以使用一个过滤器吗?

事实上,有一种方法可以做到这一点,该方法在:

您还可以使用筛选器,方法是将筛选器作为查询中的参数传递:

ndb.Query(kind=clss, filters=...)
或者像通常那样对查询应用
过滤器()

ndb.Query(kind=clss).filter()

很好,除了,如果
clss
是OP假设的一个变量,那么您绝对必须丢失正在使用的引号--
kind=clss
是正确的,而不是
kind=“clss”
,引号会使RHS变成一个常量文字字符串!请在你本来很好的回答中纠正这个大错误(三处)…@Alex Martelli谢谢你的评论,但我认为提问的人会理解这一点。我会尽量说清楚的。
ndb.Query(kind=clss).filter()