python 如何在谷歌云数据存储中获取所有种类的名称

dai*_*yue 3 google-app-engine python-3.x google-cloud-datastore

我想知道如何检索存储在所有种类的名称google cloud datastorePython。我正在考虑使用一个query

client = datastore.Client()
query = client.query()
results = query.fetch()
Run Code Online (Sandbox Code Playgroud)

但它只获取默认存储的所有实体client。那么在这种情况下如何获得所有种类的名称呢?

Ed *_*son 5

您可以使用种类元数据查询来获取种类名称。

如果您使用的是 Google Cloud Python 库,它看起来像:

query = client.query(kind='__kind__')
query.keys_only()

kinds = [entity.key.id_or_name for entity in query.fetch()]
Run Code Online (Sandbox Code Playgroud)

  • 我尝试了代码,但“kinds”还包含一些内置种类,例如“<class 'list'>:['_AE_DatastoreAdmin_Operation','_GAE_MR_TaskPayload','__Stat_Kind_IsRootEntity__','__Stat_Kind_NotRootEntity__','__Stat_Kind__','__Stat_PropertyName_Kind__'” ,'__Stat_PropertyType_Kind__','__Stat_PropertyType_PropertyName_Kind__','__Stat_PropertyType__','__Stat_Total__']`,我想知道如何仅保留用户创建的种类名称。 (2认同)