h0bit
(h0bit)
1
Hello everybody,
I'm working with Google Maps and i want to display a map for an event
that i have in my aplicaction.
When I clik on the link to view the map the bwroser show me the next
fail:
NoMethodError in Conclave/events#map
Showing vendor/plugins/tog_conclave/app/views/conclave/events/
map.html.erb where line #5 raised:
undefined method `to_html' for nil:NilClass
Extracted source (around line #5):
2: <%= GMap.header %>
3: </head>
4: <body>
5: <%= @map.to_html %>
6: <%= @map.div(:width => 550, :height => 350) %>
7: </body>
This link appear in anothe view like this:
<li>Dirección: <%= link_to @event.venue,
map_conclave_event_path(@event), :popup => [@event.venue,
'width=600,height=400']
and in the controller i have the next code:
def show
generate_map
end
def map
generate_map
end
private
def generate_map
return if !@event.venue_address || @event.venue_address == ''
loc = gg.locate @event.venue_address
@map = GMap.new("map_div_id")
@map.control_init(:large_map => true, :map_type => true)
@map.center_zoom_init([loc.latitude, loc.longitude],14)
marker = GMarker.new([loc.latitude,loc.longitude],
:title => @event.title,
:info_window => (@event.venue_address ? loc.address :
"#{loc.address} *specified address unknown"))
@map.overlay_init(marker)
rescue
@map = nil
end
So i want to know what is the problem?
Can anyone help me?
Thanks for you help.
Colin_Law1
(Colin Law)
2
Hello everybody,
I'm working with Google Maps and i want to display a map for an event
that i have in my aplicaction.
When I clik on the link to view the map the bwroser show me the next
fail:
NoMethodError in Conclave/events#map
Showing vendor/plugins/tog_conclave/app/views/conclave/events/
map.html.erb where line #5 raised:
undefined method `to_html' for nil:NilClass
Extracted source (around line #5):
2: <%= GMap.header %>
3: </head>
4: <body>
5: <%= @map.to_html %>
The error is saying that @map is nil
6: <%= @map.div(:width => 550, :height => 350) %>
7: </body>
This link appear in anothe view like this:
<li>Dirección: <%= link_to @event.venue,
map_conclave_event_path(@event), :popup => [@event.venue,
'width=600,height=400']
and in the controller i have the next code:
def show
generate_map
end
def map
generate_map
end
private
def generate_map
return if !@event.venue_address || @event.venue_address == ''
loc = gg.locate @event.venue_address
@map = GMap.new("map_div_id")
@map.control_init(:large_map => true, :map_type => true)
@map.center_zoom_init([loc.latitude, loc.longitude],14)
marker = GMarker.new([loc.latitude,loc.longitude],
:title => @event.title,
:info_window => (@event.venue_address ? loc.address :
"#{loc.address} *specified address unknown"))
@map.overlay_init(marker)
rescue
@map = nil
Could it be doing this?
You could use ruby-debug to break into your app and see what is
happening. Have a look at the Rails Guide on Debugging.
Colin
What are you using to work with google maps?
Did you tried go_maps?
https://github.com/gonow/go_maps
h0bit
(h0bit)
4
No i'm using google-geocode
h0bit
(h0bit)
5
No i'm using googl-geocode and ym4r-gm