为什么我的部署没有数据但我的预览有所有数据?

Why does my deployment have no data but my preview has all the data?

我的预览有效并且有数据,但我的部署没有数据。我正在使用(推荐的)DEFAULT CLOUD SQL 数据库配置。

注意:这只是 Google App Maker 的第 4 天。找到 App Maker 特定问题的答案非常困难,但我的申请进展很快,所以总体来说很累但很好。 :{)

当您部署应用程序时,AppMaker 会在您的 google 云 SQL 实例中为部署创建一个新数据库。预览中创建的所有数据都在另一个数据库中。

要使用与预览模式相同的数据库,您必须在选项卡 "DATABASE" 中进入应用设置并复制数据库密钥。然后转到 google 云平台中的云 sql 实例,并在概览选项卡中的实例详细信息中复制实例连接名称。 然后编辑您的部署和 select "Use Custom Cloud SQL database" 并复制格式 "instanceConnexionName/DatabaseKey" 然后保存,appmaker 应该会要求您输入 google 云 sql insatnce 的用户名和密码。

documentation

中所写

App Maker deployments can use the same Cloud SQL instance, but have separate databases on that instance. Data that you had in preview mode is not available in other deployments. You have a few options for how to handle this situation:

To use data from the preview instance in your published deployment, export the deployment data from the preview instance and import it to the published deployment.

To share a database across all deployments (preview and published), use a custom Cloud SQL database.

在应用程序设置中,您应该会看到数据库页面

数据库密钥:iTIJQaCj491a4111 (实际上这是 mySQL 实例的名称)

在 GCP 控制台中,转到 SQL,点击实例 ID,在实例 ID 概览页面上是实例连接名称,例如 MyProject-123456:us-central1:instancename

返回应用设置 Select切换到自定义数据库并输入完整的连接字符串 项目名称:instancename/schema as

MyProject-123456:us-central1:instancename/iTIJQaCj491a4111

提供用户名和密码 并按照步骤确认现有数据库

原来问题是你发布的时候没有推送数据,你必须手动重新上传数据到live版本。这实际上是一件好事,但我希望它被明确记录下来。在几年前的一些早期发行说明中,我自己发现了它。我想我不是唯一一个这么愚蠢的人。