google-app-engine - 使用 App Engine 的本地或开发 Google Cloud Firestore 数据库
问题描述
在我之前的 App Engine 项目中,我使用了 Cloud Datastore,在开发过程中,我可以在本地服务器上调试我的应用程序,它会使用本地数据库,存储在一个文件中,如果我想从头开始,我可以删除它。
使用 Cloud Firestore,即使我在本地运行,它也会与我真正的云数据库对话。还有本地选项吗?请注意,我不是在谈论客户端持久性,而是在谈论模拟开发数据库。
如果您想要开发/登台/生产, Google建议设置多个项目,我猜这就是答案,但我想在调整我的工作流程之前知道。
解决方案
我认为(现在仅几个月后)这是支持的。当我使用 dev_appserver.py 运行我的应用程序时,我看到一条消息
INFO 2019-02-14 00:08:56,030 admin_server.py:150] Starting admin server at: http://localhost:8000
转到那个 URL 会显示我看到的所有实例。即使重新启动 dev_appserver,这些似乎仍然存在。阅读这篇文章和其他文章后,我确信我的开发使用的是我的实际云数据库,但转到https://console.firebase.google.com/project/myproject显示的内容完全不同。
只是为了确定(因为 google 是 google 并且所有内容都命名相同)我正在使用 appengine 应用程序和 gcloud 项目,使用 ndb.Models 将内容存储到 Firestore ...
哦,但要小心。我的应用程序我也在使用云存储(blobstore?),即使 localhost:8000 显示了这些,这些是远程实例。
推荐阅读
- python - 如何将进程名称和进程附加到字典?
- r - 在 R -Cyprus 示例中计算到海岸线的距离
- c# - Mac C# 应用程序打开 Word 模板,将文本从应用程序表单/窗口 texboxes 插入到 .docx 文本字段并保存它们
- javascript - 如何根据javascript中的规则对字符串应用正则表达式?
- python - 如何将单元格从一个工作簿复制到具有其设置样式的另一个工作簿?
- database - 使用诸如 Git 之类的 VCS 来跟踪数据库内容(记录)更改?
- node.js - Mongoose.Model.findById() 返回 null
- spring - 分段文件上传 - 超出 maxFileSize
- ios - TypeError:null 不是对象(评估 '_reactNativeSpotLib.default.show')
- java - RecyclerView 适配器 OnClickListener 崩溃:从 Activity 上下文外部调用 startActivity() 需要 FLAG_ACTIVITY_NEW_TASK 标志