0

我想将 mapbox 合并到我的 rails 应用程序中。目前,我有一个从数据库中提取的纬度和经度点列表。我能够从数据库中提取它们并将它们放入一个数组中,但我无法让它们显示在地图上。

4

1 回答 1

1

我假设您正在使用 Mapbox.js API... 如果您...

您需要在您的网页上添加一些 javascript 来列出要点。然后,您可以通过在后面的代码中调用方法来添加 long/lats。像这样......

<link href='//api.tiles.mapbox.com/mapbox.js/v1.3.1/mapbox.css' rel='stylesheet' />
<script src='//api.tiles.mapbox.com/mapbox.js/v1.3.1/mapbox.js'></script>

<style>
    #map {
        width: 100%;
        height: 600px;
    }
</style>

<div id='map' />

<script type='text/javascript'>

    var map = L.mapbox.map('map', '[yourmapname]')

    L.mapbox.markerLayer({
        type: 'Feature',
        geometry: {
        type: 'MultiPoint',
        coordinates: [ <%=getPins()%> ] 
    },
        properties: {
            title: ['A Pin'],
            description: ['1234'],
        }
    }).addTo(map);

    </script>

getPins() 在后面的代码中调用一个函数,该函数需要返回一个格式如下的字符串 - “[x,y],[x,y],[x,y]...”。因此,如果您已经有一个数组,那么只需使用该格式将其格式化为一个字符串 - 并返回它。

“type: 'Multipoint'”这一行意味着 API 将读取您传回的字符串并为每个字符串创建一个 pin。

于 2013-09-13T09:07:15.540 回答