0

Rails アプリに mapbox を組み込みたいと考えています。現在、データベースから取得している緯度と経度のリストがあります。それらをデータベースから引き出して配列に入れることはできますが、マップに表示することはできません。

4

1 に答える 1

1

Mapbox.js API を使用していると仮定しています...

ポイントを一覧表示する JavaScript を Web ページに配置する必要があります。その後、コード ビハインドでメソッドを呼び出して、経度/緯度を追加できます。そのようです....

<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 が読み取り、それぞれのピンを作成することを意味します。

于 2013-09-13T09:07:15.540 に答える