Problems with Google Maps

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.

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

No i'm using google-geocode

No i'm using googl-geocode and ym4r-gm