gpt4 book ai didi

python - 将谷歌云数据存储模拟器与 dev_appserver 一起使用

转载 作者:太空狗 更新时间:2023-10-29 20:25:13 25 4
gpt4 key购买 nike

我一直在阅读字里行间的内容,并尝试将 dev_appserver.py 与新的“非遗留”谷歌云数据存储模拟器连接起来。

我的主要动机是在本地机器上开发时将我的应用引擎项目与我的谷歌云数据流管道集成。

据我所知,这是设置集成的过程:

  • 使用 pip 安装 googledatastore 库(您可能需要使用 easy_install 强制升级 six,特别是如果您使用系统 python El Capitan)
  • 使用谷歌云 SDK 工具运行谷歌云数据存储模拟器:

    gcloud beta emulators datastore start --no-legacy
  • 在 dev_appserver 将运行以下命令的终端中设置数据存储环境变量:

    $(gcloud beta emulators datastore env-init --no-legacy)
  • 如果 app.yaml 中的项目 ID 与 gcloud 工具中当前选择的项目 ID 不匹配,请在同一 shell 中设置以下环境变量:

    export DATASTORE_USE_PROJECT_ID_AS_APP_ID=true
  • 运行 dev_appserver.py 并导航到 http://localhost:8000/datastore这应该可以让您浏览模拟器的数据存储数据。

然而,当我导航到我得到的 url 时,这并不能正常工作:

BadArgumentError: Could not import googledatastore.
This library must be installed with version >= 4.0.0.b1 to use the Cloud Datastore
API.

这很奇怪,因为如果我打开 python shell 并运行 import googledatastore 不会发生错误。

如果我深入挖掘并检测 dev_appserver 中的导入代码并记录错误 here我得到以下回溯:

Traceback (most recent call last):
File "/usr/local/google-cloud-sdk/platform/google_appengine/google/appengine/datastore/datastore_pbs.py", line 52, in <module>
import googledatastore
File "/Library/Python/2.7/site-packages/googledatastore/__init__.py", line 21, in <module>
from . import helper
File "/Library/Python/2.7/site-packages/googledatastore/helper.py", line 25, in <module>
from google.datastore.v1beta3 import entity_pb2
ImportError: No module named datastore.v1beta3

我在常规 python shell 中导入 google.datastore.v1beta3 也没有问题。

如果我运行 PYTHONINSPECT=x dev_appserver.py app.yaml 并退出执行这些导入的 shell 运行时甚至没有错误,那就更奇怪了。也许在 dev_appserver.py 启动时 python 路径发生了一些奇怪的事情?

谁能告诉我如何使用此功能?

更新:我在 ubuntu 14.04(系统 python 2.7.6,通过 easy_install 的 pip 8.1.2,gcloud-sdk 118.0.0,app-engine-python 1.9.38)以及 OS X(gcloud sdk)上重现了这个问题114.0.0,app-engine-python 1.9.38,系统 python 2.7.10)。

最佳答案

请注意,

现在可以使用带有 dev_appserver 的谷歌云数据存储模拟器! ( link )

更新 Google Cloud SDK,然后使用“----support_datastore_emulator”运行 dev_appserver。

此功能处于测试阶段,欢迎试用!我们正在积极收集反馈。

关于python - 将谷歌云数据存储模拟器与 dev_appserver 一起使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38585619/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com