如何使用Ruby自动将行添加到Fusion Table(特别是具有地理/地图信息的表)?

时间:2012-10-22 00:44:07

标签: ruby google-fusion-tables

PriceOfWeed.com是一个网站,用户可以提交他们为大麻支付的费用。如果您点击某个州,则可以看到有多少用户提交了他们的交易,以及支付的平均价格。

以下是我认为它的工作原理:

  1. 用户使用网站顶部的表单提交他们支付的金额。
  2. 该价格已插入网站所有者的Fusion Table。
  3. Fusion Table地图现在反映了更新的信息。
  4. 我想要了解的是这个过程如何在Ruby中运行 - 特别是第2步。我想使用Fusion Tables和Ruby制作一个包含动态更新数据的酷地图,但我还没有找到关于如何做的简单说明/示例。

    有谁知道如何使用Ruby自动将行添加到我自己的Fusion Table中?

1 个答案:

答案 0 :(得分:1)

我已经使用fusion_tables gem来使用Google Fusion Tables来生成美国州立大学和...县级映射信息。

使用它非常简单。 README.md file解释了使用融合表所涉及的步骤。

以下是整体结构的工作原理: 1.创建基本融合表以存储所需数据。 2.将其与包含地理信息(状态/县级等)的公开融合表合并,并创建地图视图。 3.使用基于fusion_tables gem的ruby代码,将记录插入基本融合表。地图会使用新信息进行更新。

插入记录的代码如下:

require 'fusion_tables'

# Connect to service    
@ft = GData::Client::FusionTables.new      
@ft.clientlogin(username, password) # Make sure this user has read/write access to the Fusion Table.

tables = @ft.show_tables
required_table = tables.select{ |t| t.name == "Base_table" } # assuming the base table name is "Base_table"

data = [ { "column_1" => <First Column 1 data>, "column_2" = <First column 2 data>...},
         { "column_1" => <Second Column 1 data>, "column_2" = <Second column 2 data>...},
         ...
       ]

 required_table.insert data