Мне нужно отобразить карту Google с несколькими маркерами. Проблема, которую я имею, состоит в том, чтобы установить все маркеры на карте. У меня есть контроллер города и вид карты. Вот соответствующий код:
city_cntroller.rb
def map
@city = City.find(params[:id])
@mapcenter = @city.geocode
@businesses = @city.businesses
@numberofbusinesses = @city.businesses.count
end
map.html.haml
%script{:type => "text/javascript", :charset => "utf-8", :src => "http://maps.googleapis.com/maps/api/js?v=3.6&sensor=false®ion=IN"}
%script{:type => "text/javascript"}
function initialize() {
var cityLatlng = new google.maps.LatLng(
= @mapcenter[0]
,
= @mapcenter[1]
);
var options = {
zoom: 12,
center: cityLatlng,
mapTypeId: google.maps.MapTypeId.ROADMAP
};
var map = new google.maps.Map(document.getElementById("map_canvas"), options);
var businesscount = (
= @numberofbusinesses
)
for (var i = 0; i <= businesscount; i++) {
var marker = new google.maps.Marker({
position: new google.maps.LatLng(
= @businesses[i].latitude
,
= @businesses[i].longitude
),
map: map,
});
};
}
%body{ :onload => "initialize()" }
%div#map_canvas{:style => "width: 900px; height: 350px;"}
Проблема в том, что "i" не принимается, когда я пытаюсь перебрать через @Business, появляется сообщение об ошибке
неопределенная локальная переменная или метод `i 'для # <#: 0xbd2d970>
Как я могу пройтись по @ bususiness, чтобы разместить все маркеры на карте?
Спасибо за вашу помощь!