Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/300.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代码中的Google云数据存储API_Python_Google App Engine_Google Cloud Storage_Google Cloud Platform_Google Cloud Datastore - Fatal编程技术网

Python代码中的Google云数据存储API

Python代码中的Google云数据存储API,python,google-app-engine,google-cloud-storage,google-cloud-platform,google-cloud-datastore,Python,Google App Engine,Google Cloud Storage,Google Cloud Platform,Google Cloud Datastore,我正在尝试在我的Python Django项目中实现Google云数据存储,而不是在Google App Engine上运行 在不让项目在Google App Engine上运行的情况下,是否可以使用Google数据存储?如果是,请说明如何检索完整的实体对象或成功执行查询 下面的代码片段打印查询对象,但在打印之后抛出一个错误 代码段: from gcloud import datastore entity_kind = 'EntityKind' numeric_id = 1234 client

我正在尝试在我的Python Django项目中实现Google云数据存储,而不是在Google App Engine上运行

在不让项目在Google App Engine上运行的情况下,是否可以使用Google数据存储?如果是,请说明如何检索完整的实体对象或成功执行查询

下面的代码片段打印查询对象,但在打印之后抛出一个错误

代码段:

from gcloud import datastore
entity_kind = 'EntityKind'
numeric_id = 1234

client = datastore.Client()
key = client.key(entity_kind, numeric_id)
query = client.query(kind=entity_kind)
print(query)
results = list(query.fetch())
print(results)
错误:

NotFound: 404 The project gproj does not exist or it does not contain an active App Engine application. Please visit http://console.developers.google.com to create a project or https://console.developers.google.com/appengine?project=gproj to add an App Engine application. Note that the app must not be disabled.
这可能会有所帮助。你可以看到一个例子

您只需将项目id传递给
.Client()
方法:

datastore.Client("YOUR_PROJECT_ID")
在运行应用程序之前,您还可以通过运行以下命令跳过此部分:

$ gcloud beta auth application-default login
如果您运行它,它将在本地验证您的所有请求,而无需注入项目id:)


希望这有帮助

可以在AppEngine之外使用数据存储,但您需要有一个有效的Google云平台项目。你有吗?@MeLight有。我有一个有效的项目。它也会在错误中打印项目。在代码中添加“print(vars(client))”也会显示正确的项目值。我还没有在此代码段的任何地方指定项目值。您还需要根据错误创建一个应用程序引擎项目。之后,您应该能够使用提供了正确库和身份验证的数据存储OK。我会再试一次。谢谢