google-cloud-datastore - 如何将数据插入数据存储区
问题描述
如何将数据插入数据存储区?数据可能如下所示:
{
'food': [{
"item_name": item,
'price': price
}, {
"item_name": item,
'price': price
}],
'beverages': [{
''
'beverage_name': beverage,
'beverage_price': b_price
}, {
''
'beverage_name': beverage,
'beverage_price': b_price
}]
}
解决方案
您尝试添加到的数据Google Cloud Datastore
是一个JSON
字符串。您在问题中使用它的方式是错误的结构。正确的JSON
例子是:
{
"food": [
{ "food_name":"NAME1", "food_price":"PRICE1" },
{ "food_name":"NAME2", "food_price":"PRICE2" },
{ "food_name":"NAME3", "food_price":"PRICE3" }
],
"beverages":[
{ "beverage_name":"NAME1", "beverage_price":"PRICE1" },
{ "beverage_name":"NAME2", "beverage_price":"PRICE2" }
]
}
要将 JSON 字符串中的数据添加到 Datastore,您必须:
- 将 JSON 字符串加载为 JSON 对象,以便能够通过其字段
- 创建客户端以访问 Google 数据存储区
- 为Datastore
food
中的值设置键Kind
- 使用
entity
将数据添加到数据存储区 - 为Datastore
beverages
中的值设置键Kind
- 再次使用
entity
将数据添加到数据存储区
有关详细信息,您可以参考Google Cloud Data Store Entities、Properties 和 Keys文档。
我自己做了一点编码,这是我在 GitHub中的 Python 代码示例。您可以了解它的工作原理并对其进行测试。它将Kind
在 Datastore 中创建两个不同的值,并将食品数据foods
和饮料数据添加到beverages
.
推荐阅读
- vue.js - Vue:使用setInterval中的变量值更改类
- php - 如何在列上减去两个值并在另一列中显示mysql
- php - Angular 获取图像返回 mime 类型的 text/html 和 404
- java - 每个节点在链表中扮演什么角色?
- python - 返回两个numpy数组中相等元素的唯一索引?
- python-3.x - python选择子集,其中df列值包含数组中的值之一
- linux - docker: 使用 --net=host 隐藏端口
- jsf - Primefaces 未定义 $ 未定义
- php - 在 PHP 中显示月份中的日期并将它们与 MySQL 中的日期进行比较?
- javascript - 取消或保存打印对话框后,当前窗口被挂起