レールは初めてですので、ご容赦ください。私はまだすべての「魔法」を完全には理解していません。
基本的に、JavascriptでLocationオブジェクトにアクセスする必要があります。これらのオブジェクトにはすべて0-N座標が含まれています。モデルが正しく設定されており、各座標にlocation_idがあると確信しています。
次のメソッドを使用して、Locationオブジェクトの解析されたJSONを取得することができました。
def index
@locations = Location.all.to_json
end
コントローラで、ビューでこれにアクセスしました
var theLocations = <%= @locations.html_safe %>;
ただし、この変数をログに表示すると、座標は表示されません。これは理にかなっています。つまり、私はすべての場所を反復処理し、それぞれについて、関連する座標を使用してjavascript変数を作成することを計画していました。これらの変数は、オブジェクトとしてGoogleマップに渡されます。
基本的に私は(擬似コード)のようなことをすることを計画していました:
for(Location l in Locations){
get all Coordinate objects within Location
for(Coordinate c: Coordinates);
var myObject = new google.maps.LatLng(c.X, c.Y),
add myObject to list for this location.
}
}
どうやってこれに取り組むのかよくわかりません。ロケーション内の座標への参照を取得するにはどうすればよいですか?