一个对象,本质上是一个多边形,有一个属性数组(经度和纬度)。
class Polygon
has_many :lonlats
class Lonlat
belongs_to :polygon
attr_accessible :lon, :lat
我必须为Polygon对象的show视图初始化javaScript,调用不确定数量的lonlats,例如:
var polygonCoords = [
new google.maps.LatLng(36.23, 19.55),
new google.maps.LatLng(36.17, 19.53),
new google.maps.LatLng(36.03, 19.89),
new google.maps.LatLng(36.12, 19.90)
];
如何实现这一目标?
答案 0 :(得分:0)
由于脚本是个性化的,因此在视图中生成脚本:
<% @lonlats.each do |lonlat| %>
new google.maps.LatLng(<%= lonlat.lat %>, <%= lonlat.lon %>)<%= "," unless lonlat == @lonlats.last %>
<% end %>
控制器:
@lonlats = Lonlat.where(['polygon_id = ?', params[:id]]).all