Skip to content

Enables easy display of items (taken from a Rails 3 model) with Google Map, OpenLayers, Bing or Mapquest. Geocoding + Directions included. Provides much options: markers customization, infowindows, auto-adjusted zoom, polylines, polygons, circles etc... See wiki for full description and examples.

License

Notifications You must be signed in to change notification settings

iRonin/Google-Maps-for-Rails

This branch is 456 commits behind apneadiving/Google-Maps-for-Rails:master.

Folders and files

NameName
Last commit message
Last commit date

Latest commit

196b62f · Sep 1, 2011
Aug 31, 2011
Aug 22, 2011
Aug 31, 2011
Sep 1, 2011
Sep 1, 2011
May 22, 2011
Mar 19, 2011
Aug 30, 2011
Jul 14, 2011
Aug 31, 2011
Aug 31, 2011

Repository files navigation

Google Maps for Rails (gmaps4rails)

Gmaps4rails is developped to simply create a Google Map:

  • directly from your model,

  • from your own json

It’s based on Ruby on Rails 3 Engines and uses Google Maps API V3.

See screencasts here: www.youtube.com/user/TheApneadiving

When Gmaps4rails finally means Global Maps for Rails

I’ve added support for other map providers:

  • openlayers

  • mapquest

  • bing

See: github.com/apneadiving/Google-Maps-for-Rails/wiki/Map-Apis

Any help would be appreciated to complete this work.

Requirements

  • gem ‘gmaps4rails’ (in your gemfile, then bundle)

  • <%= yield :head %> (in your header)

  • <%= yield :scripts %> (in your footer)

To make Rails serve the assets (javascripts, stylesheets and marker images) you have several options, depending on your configuration and Rails version:

  • if you are using Rails 3.1 and have asset pipeline enabled (‘config.assets.enabled = true’ in config/application.rb), include the appropriate manifest:

    • //= require gmaps4rails/bing.js

    • //= require gmaps4rails/googlemaps.js

    • //= require gmaps4rails/mapquest.js

    • //= require gmaps4rails/openlayers.js

    • //= require gmaps4rails/all_apis.js

    You even don’t need the ‘yield :head` if you include `require gmaps4rails` in your CSS manifest.

  • if you are using Rails 3.0: if you have Rails configured to serve static assets (‘config.serve_static_assets = true’; note that it is disabled by default in production environment), they’ll be served directly from gem’s public/ directory.

  • finally you can just copy assets to your application’s public/stylesheets, public/javascripts/gmaps4rails and public/images. It’s recommended to do this in production so that you can let your webserver serve them rather than go through Rails each time they are requested. There’s a generator to help you with that:

    rails generate gmaps4rails:install
    

Basic configuration

In your model, add:

acts_as_gmappable

def gmaps4rails_address
  #describe how to retrieve the address from your model, if you use directly a db column, you can dry your code, see wiki
  "#{self.street}, #{self.city}, #{self.country}" 
end

Create a migration and add the following fields to your table (here users):

add_column :users, :latitude, :float #you can change the name, see wiki
add_column :users, :longitude, :float #you can change the name, see wiki
add_column :users, :gmaps, :boolean #not mandatory, see wiki

How to?

QuickStart!

In your controller:

@json = User.all.to_gmaps4rails

In your view:

<%= gmaps4rails(@json) %>

Done!

Options

  • Markers with Info window, Custom Picture, RichMarkers (make your own markers with custom html)

  • Automatic sidebar with list of markers

  • Circles, Polylines, Polygons

  • Geocode directly your address and retrieve coordinates.

  • Wrapper for ‘Direction’, giving instructions to go from point A to point B

  • Auto-adjust the map to your markers

  • Refresh your map on the fly with Javascript (and Ajax)

  • KML support

  • Easy multimap

  • More details in the Wiki

Todo?

Feel free ton contact us, you have your say.

MIT license.

Authors: Benjamin Roth, David Ruyer

Contributors: Mircea Pricop, Kamil Śliwak, Alex Vorobiev

About

Enables easy display of items (taken from a Rails 3 model) with Google Map, OpenLayers, Bing or Mapquest. Geocoding + Directions included. Provides much options: markers customization, infowindows, auto-adjusted zoom, polylines, polygons, circles etc... See wiki for full description and examples.

Resources

License

Stars

Watchers

Forks

Packages

No packages published