class Mecha::Generators::DeviseGenerator

Public Instance Methods

config_application_controller() click to toggle source
# File lib/mecha/generators/devise/devise_generator.rb, line 43
def config_application_controller
  inject_into_file(
    'app/controllers/application_controller.rb',
    "\n  before_action :authenticate_user!",
    before: "\nend"
  )
end
config_development_rb() click to toggle source
# File lib/mecha/generators/devise/devise_generator.rb, line 39
def config_development_rb
  environment("config.action_mailer.default_url_options = { host: 'localhost', port: 3000 }", env: 'development')
end
config_routes() click to toggle source
# File lib/mecha/generators/devise/devise_generator.rb, line 51
      def config_routes
        routes = <<-ROUTES.strip_heredoc
          devise_for :users

          authenticated :user do
            root '/', as: :authenticated_root
          end

          devise_scope :user do
            root 'devise/sessions#new'
          end
        ROUTES

        inject_into_file('config/routes.rb', routes, after: "Rails.application.routes.draw do\n")
      end
generate_devise_user() click to toggle source
# File lib/mecha/generators/devise/devise_generator.rb, line 21
def generate_devise_user
  generate('devise User')
end
generate_locales() click to toggle source
# File lib/mecha/generators/devise/devise_generator.rb, line 25
def generate_locales
  generate('devise:i18n:locale en')
  generate('devise:i18n:locale pt-BR')

  empty_directory('config/locales/devise')
  move_file('config/locales/devise.views.en.yml', 'config/locales/devise/views.en.yml')
  move_file('config/locales/devise.views.pt-BR.yml', 'config/locales/devise/views.pt-BR.yml')
  remove_file('config/locales/devise.en.yml')
end
generate_localized_views() click to toggle source
# File lib/mecha/generators/devise/devise_generator.rb, line 35
def generate_localized_views
  generate('devise:i18n:views')
end
install_devise() click to toggle source
# File lib/mecha/generators/devise/devise_generator.rb, line 11
def install_devise
  gem('devise', '~> 4.4.3')
  gem('devise-i18n', '~> 1.6.4')
  bundle_command('install')

  stop_spring

  generate('devise:install')
end

Private Instance Methods

move_file(from, to) click to toggle source
# File lib/mecha/generators/devise/devise_generator.rb, line 73
def move_file(from, to)
  FileUtils.mv(File.join(destination_root, from), File.join(destination_root, to))
end
stop_spring() click to toggle source
# File lib/mecha/generators/devise/devise_generator.rb, line 69
def stop_spring
  run('spring stop')
end