如何使用JavaScript动态更新Maps Engine数据表?

时间:2014-11-25 15:11:59

标签: javascript google-maps google-maps-engine

我有一个Maps Engine地图,其中一个图层链接到包含单个位置的数据表。我想通过Google协作平台中的JavaScript更新数据表。 mapsengine.tables.features.batchPatch似乎做了我想要的,同一命令的batchInsert版本的帮助页面似乎可以修改为我想要的。但是,我很难让它正常工作。我认为这个问题是因为我不知道这个表的主键是什么,或者我在哪里可以找到它(请参阅here以获得更多解释)。

这里的任何人都可以告诉我,我是否朝着正确的方向前进,以及我如何能够找到这个主键(有时候它似乎也被称为gx_id)?提前感谢您提供的任何帮助。

修改:当我转到here并获取有关我桌子的信息时,我收到以下回复:

{
 "tables": [
  {
   "id": {My Table ID},
   "etag": "\"6030101253664097613\"",
   "projectId": {My Project ID},
   "name": "Current Location",
   "description": "",
   "tags": [
   ],
   "writersCanEditPermissions": false,
   "sourceEncoding": "UTF-8",
   "processingStatus": "complete",
   "bbox": [
    -180,
    -90,
    180,
    90
   ],
   "creationTime": "2014-11-11T21:33:43.982Z",
   "lastModifiedTime": "2014-11-12T20:55:20.613Z"
  }
 ]
}

如您所见,未列出gx_id。有没有办法添加它,还是我需要重新创建表,以便能够从一开始就添加它?如果我需要重新创建表格,我需要做些什么来确保gx_id存在,因为上次创建表时没有立即显示任何缺失的内容。

1 个答案:

答案 0 :(得分:1)

是的,这应该可以正常工作。您只需提取表格副本并查看属性即可找到gx_id。这是一个示例from the docs

请求:

  

https://www.googleapis.com/mapsengine/v1/tables/12421761926155747447-06672618218968397709/features?maxResults=500&version=published&key=(YOUR_KEY_HERE)

响应:

{
 "type": "FeatureCollection",
 "features": [
  {
   "type": "Feature",
   "geometry": {
    "type": "Point",
    "coordinates": [
     149.23531999999997,
     -35.352484
    ]
   },
   "properties": {
    ...
    "gx_id": "1" <-- HERE
   }
  },