class DeviseRemote::InstallGenerator
Public Instance Methods
add_authentication()
click to toggle source
# File lib/generators/devise_remote/install_generator.rb, line 22 def add_authentication controller_path = 'app/controllers/application_controller.rb' if File.exist?(controller_path) inject_into_file controller_path, after: "class ApplicationController < ActionController::Base\n" do "\t# Added by DeviseRemote to authenticate all incoming requests\n" "\tbefore_action :authenticate_user!\n" end else say_status 'warning', <<-TEXT.strip_heredoc, :yellow ApplicationController not found. =============================================================================== You will need to add the following to one of your controllers: before_action :authenticate_user! See the Devise's README for more information. =============================================================================== TEXT end end
add_initializer()
click to toggle source
# File lib/generators/devise_remote/install_generator.rb, line 18 def add_initializer template 'devise_remote.erb', 'config/initializers/devise_remote.rb' end
add_login_to_devise()
click to toggle source
# File lib/generators/devise_remote/install_generator.rb, line 14 def add_login_to_devise invoke 'devise_remote:login_migration', [name] end
add_routes()
click to toggle source
# File lib/generators/devise_remote/install_generator.rb, line 51 def add_routes inject_into_file 'config/routes.rb', after: 'Rails.application.routes.draw do' do "\n\tmount DeviseRemote::Engine => '/devise_remote'\n" end end
generate_model()
click to toggle source
# File lib/generators/devise_remote/install_generator.rb, line 10 def generate_model invoke 'devise', [name] end
install_devise()
click to toggle source
# File lib/generators/devise_remote/install_generator.rb, line 6 def install_devise invoke 'devise:install' end
update_model()
click to toggle source
# File lib/generators/devise_remote/install_generator.rb, line 43 def update_model model_path = "app/models/#{name.downcase}.rb" comment_lines model_path, /able/ inject_into_file model_path, after: 'class User < ApplicationRecord' do "\n\tdevise :http_header_authenticatable\n" end end