从JSON加载折线并在地图上显示

时间:2013-01-21 18:25:56

标签: javascript database json postgresql google-maps

首先,我是使用Google Maps API进行开发的初学者,并且想知道在地图中显示由折线制作的路线的最佳方式是什么,该折线从PostgreSQL数据库中的表中获取其坐标?

我有两个表,一个叫做“路由”,另一个叫做“route_dots”

“routes”表包含以下字段:

-id --> Unique ID of the route,
-sport_id --> ID of the sport,
-user_id --> ID of the user who upload the routes,
-title --> title of the route,
-description --> description of the route,

“route_dots”包含     -id - >现场的唯一ID,     -route_id - >路线的ID,     -coord_lat - > LAT,     -coord_lon - > LON,     -magic number - >路线点的顺序,

在其他网站我找到了一个解决方案,我可以生成一个JSON文件,其中包含路线的所有信息,如LAT和LNG坐标,标题,描述,然后让地图读取该信息以显示路线。 / p>

我想要做的是生成一个数组,其中包含从coord_lat和coord_lon字段获取的所有LAT和LNG坐标,其中包含坐标,路线标题和描述。 “magic_number”字段包含点的顺序。

如何生成包含上述所有信息的JSON文件,然后在Map中绘制该文件?

谢谢!

1 个答案:

答案 0 :(得分:0)

如果您使用的是PostgreSQL 9.1或更高版本,则可以使用json类型(首先在9.2中提供开箱即用,但后端可用于9.1)。

如果您使用此功能,基本上有三个步骤:

  1. 定义PostgreSQL用户定义类型以表示您需要的数据结构。请注意,元组类型可以包含元组类型,甚至是元组类型的数组作为PostgreSQL 8.4的属性,因此您可以根据需要创建深层数据结构。

  2. 编写一个输出此数据结构的查询

  3. 将其包装在row_to_json()

  4. 然而,复杂性超出了工作范例。