Class: Pollett::Generators::InstallGenerator

Inherits:
Rails::Generators::Base
  • Object
show all
Includes:
Rails::Generators::Migration
Defined in:
lib/generators/pollett/install/install_generator.rb

Instance Method Summary collapse

Instance Method Details

#create_initializerObject



17
18
19
# File 'lib/generators/pollett/install/install_generator.rb', line 17

def create_initializer
  copy_file "initializer.rb", "config/initializers/pollett.rb"
end

#create_or_inject_into_user_modelObject



27
28
29
30
31
32
33
34
35
# File 'lib/generators/pollett/install/install_generator.rb', line 27

def create_or_inject_into_user_model
  if File.exist? "app/models/user.rb"
    inject_into_file "app/models/user.rb", after: "class User < ActiveRecord::Base\n" do
      "  include Pollett::User\n\n"
    end
  else
    copy_file "user.rb", "app/models/user.rb"
  end
end

#create_users_migrationObject



37
38
39
40
41
42
43
# File 'lib/generators/pollett/install/install_generator.rb', line 37

def create_users_migration
  if users_table_exists?
    create_add_columns_migration
  else
    copy_migration "create_users.rb"
  end
end

#inject_into_application_controllerObject



21
22
23
24
25
# File 'lib/generators/pollett/install/install_generator.rb', line 21

def inject_into_application_controller
  inject_into_class "app/controllers/application_controller.rb", ApplicationController do
    "  include Pollett::Controller\n"
  end
end

#install_migrationsObject



45
46
47
# File 'lib/generators/pollett/install/install_generator.rb', line 45

def install_migrations
  Dir.chdir(Rails.root) { `rake pollett:install:migrations` }
end

#mountObject



11
12
13
14
15
# File 'lib/generators/pollett/install/install_generator.rb', line 11

def mount
  inject_into_file "config/routes.rb", after: "Rails.application.routes.draw do\n" do
    "  mount Pollett::Engine => \"/\"\n\n"
  end
end