Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/289.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 appengine使用数据存储设置本地主机以进行测试_Python_Google App Engine_Google Cloud Datastore_Google App Engine Python_Local Datastore - Fatal编程技术网

Python appengine使用数据存储设置本地主机以进行测试

Python appengine使用数据存储设置本地主机以进行测试,python,google-app-engine,google-cloud-datastore,google-app-engine-python,local-datastore,Python,Google App Engine,Google Cloud Datastore,Google App Engine Python,Local Datastore,我曾经尝试过跟随谷歌的文档,了解如何使用数据库()建立本地开发。然而,我没有足够的经验来跟进。我甚至不确定这是否是正确的指南。该应用程序是一个使用Python2.7的Django项目。要运行本地主机,我通常键入dev\u appserver.py--host 127.0.0.1. 我的问题是: 如何在谷歌云上下载数据存储数据库。我不想下载整个数据库,只想下载足够的数据来填充本地主机,以便进行测试 下载数据库后,我需要做什么才能将其连接到本地主机?我必须在某个地方更改参数吗 我需要下载数据存储吗?

我曾经尝试过跟随谷歌的文档,了解如何使用数据库()建立本地开发。然而,我没有足够的经验来跟进。我甚至不确定这是否是正确的指南。该应用程序是一个使用Python2.7的Django项目。要运行本地主机,我通常键入
dev\u appserver.py--host 127.0.0.1.

我的问题是:

  • 如何在谷歌云上下载数据存储数据库。我不想下载整个数据库,只想下载足够的数据来填充本地主机,以便进行测试

  • 下载数据库后,我需要做什么才能将其连接到本地主机?我必须在某个地方更改参数吗

  • 我需要下载数据存储吗?我可以在云上复制一个副本,然后连接到该数据存储吗

  • 当我运行localhost时,它是否应该已经连接到数据存储?因为站点在云上运行时就可以工作。在哪里可以找到连接URI

  • 感谢您的帮助

    该应用程序旨在模拟整个应用程序引擎环境,如果您检查
    dev_appserver.py
    命令的输出,您将看到类似于
    在以下位置启动云数据存储模拟器的内容:http://localhost:PORT
    。您的代码将自动与绑定的数据存储交互,根据您编写的代码推送和检索数据。您的数据将保存在本地存储中的一个文件中,并将在开发服务器的不同运行中保持,除非显式删除

    此选项不提供从现有云数据存储实例导入数据的功能,尽管如果您的测试过程能够通过使用以编程方式创建的自定义脚本用模拟数据填充本地数据库,那么它是一个现成的解决方案。如果您决定使用这种方法,只需编写数据创建脚本并在运行测试之前执行它

    现在,有另一个选项可以使用云SDK模拟本地数据存储,该SDK附带了方便的功能。您可以在“文档”页下找到可用的信息。此模拟器支持导入从生产云数据存储下载的实体,以及将它们导出到文件中

    回到你的问题:

  • 下面将数据从云实例导出到GCS bucket中,然后将数据从bucket下载到文件系统中,最后使用所示命令将数据导入到emulator中
  • 要使用模拟器,您需要首先在云Shell中运行
    gcloud beta模拟器数据存储启动
    ,然后在单独的选项卡中运行
    dev\u appserver.py--support\u datastore\u emulator=true--datastore\u emulator\u port=8081 app.yaml
  • 开发服务器使用上述两个模拟器中的一个,在这两种情况下,它都未连接到云数据存储。您可以使用数据库的副本创建另一个用于开发目的的项目,并将应用程序部署到该项目中,这样您就根本不用模拟器了
  • 通过
    https://datastore.googleapis.com/v1/projects/project-id
    尽管这与模拟器如何管理本地服务器中的连接无关
  • 希望这有帮助。

    旨在模拟整个应用程序引擎环境,如果您检查
    dev_appserver.py
    命令的输出,您将看到类似于
    在以下位置启动云数据存储模拟器的内容:http://localhost:PORT
    。您的代码将自动与绑定的数据存储交互,根据您编写的代码推送和检索数据。您的数据将保存在本地存储中的一个文件中,并将在开发服务器的不同运行中保持,除非显式删除

    此选项不提供从现有云数据存储实例导入数据的功能,尽管如果您的测试过程能够通过使用以编程方式创建的自定义脚本用模拟数据填充本地数据库,那么它是一个现成的解决方案。如果您决定使用这种方法,只需编写数据创建脚本并在运行测试之前执行它

    现在,有另一个选项可以使用云SDK模拟本地数据存储,该SDK附带了方便的功能。您可以在“文档”页下找到可用的信息。此模拟器支持导入从生产云数据存储下载的实体,以及将它们导出到文件中

    回到你的问题:

  • 下面将数据从云实例导出到GCS bucket中,然后将数据从bucket下载到文件系统中,最后使用所示命令将数据导入到emulator中
  • 要使用模拟器,您需要首先在云Shell中运行
    gcloud beta模拟器数据存储启动
    ,然后在单独的选项卡中运行
    dev\u appserver.py--support\u datastore\u emulator=true--datastore\u emulator\u port=8081 app.yaml
  • 开发服务器使用上述两个模拟器中的一个,在这两种情况下,它都未连接到云数据存储。您可以使用数据库的副本创建另一个用于开发目的的项目,并将应用程序部署到该项目中,这样您就根本不用模拟器了
  • 通过
    https://datastore.googleapis.com/v1/projects/project-id
    尽管这与模拟器如何管理本地服务器中的连接无关

  • 希望这有帮助。

    当我运行命令
    dev_appserver.py
    时,没有类似于
    在以下位置启动云数据存储模拟器的语句:http://localhost:PORT
    。目前,我的代码没有与allI的数据库交互。我确实有这个
    启动模块“data exporter”在:ht运行