class Model::GmapsGenerator

Public Instance Methods

copy_initializer_file() click to toggle source
# File lib/generators/model/gmaps/gmaps_generator.rb, line 6
    def copy_initializer_file
      @app_name = file_name
      inject_into_file "app/assets/javascripts/application.js", after: "//= require jquery_ujs" do
<<-JS

//= require gmaps4rails/gmaps4rails.base
//= require gmaps4rails/gmaps4rails.googlemaps
JS
      end
      inject_into_file "app/models/#{file_name}.rb", after: "ActiveRecord::Base" do
<<-RUBY

  geocoded_by :address
  after_validation :geocode
  def address
    "\#{logradouro}, \#{numero}, \#{bairro}, \#{cidade.try(:cidade_estado)}"
  end
RUBY
      end
      gem 'geocoder'
      gem 'gmaps4rails', "1.5.6"
      Bundler.with_clean_env do
        run "bundle install"
        run "rails generate migration add_latitude_and_longitude_to_#{@app_name.pluralize} latitude:float longitude:float"
        run "rake db:migrate"
      end
    end