Class: ActiveRegistration::InstallGenerator
- Inherits:
-
Rails::Generators::Base
- Object
- Rails::Generators::Base
- ActiveRegistration::InstallGenerator
- Includes:
- Rails::Generators::Migration
- Defined in:
- lib/generators/active_registration/install_generator.rb
Class Method Summary collapse
Instance Method Summary collapse
- #add_routes ⇒ Object
- #copy_migration ⇒ Object
- #generate_controller ⇒ Object
- #generate_mailer ⇒ Object
- #generate_views ⇒ Object
- #inject_user_extension ⇒ Object
Class Method Details
.next_migration_number(dirname) ⇒ Object
6 7 8 |
# File 'lib/generators/active_registration/install_generator.rb', line 6 def self.next_migration_number(dirname) Time.now.utc.strftime("%Y%m%d%H%M%S") end |
Instance Method Details
#add_routes ⇒ Object
22 23 24 25 26 27 28 29 30 |
# File 'lib/generators/active_registration/install_generator.rb', line 22 def add_routes # TODO implement edit and update in the future # resource :registration, only: [:new, :create, :edit, :update] do route <<~ROUTE resource :registration, only: [ :new, :create ] do get :confirm, on: :collection end ROUTE end |
#copy_migration ⇒ Object
10 11 12 |
# File 'lib/generators/active_registration/install_generator.rb', line 10 def copy_migration migration_template "add_active_registration_fields_to_users.rb", "db/migrate/add_active_registration_fields_to_users.rb" end |
#generate_controller ⇒ Object
14 15 16 |
# File 'lib/generators/active_registration/install_generator.rb', line 14 def generate_controller copy_file "registrations_controller.rb", "app/controllers/registrations_controller.rb" end |
#generate_mailer ⇒ Object
32 33 34 35 |
# File 'lib/generators/active_registration/install_generator.rb', line 32 def generate_mailer copy_file "confirmation_mailer.rb", "app/mailers/confirmation_mailer.rb" directory "views/confirmation_mailer", "app/views/confirmation_mailer" end |
#generate_views ⇒ Object
18 19 20 |
# File 'lib/generators/active_registration/install_generator.rb', line 18 def generate_views directory "views/registrations", "app/views/registrations" end |
#inject_user_extension ⇒ Object
37 38 39 40 41 42 43 44 45 46 |
# File 'lib/generators/active_registration/install_generator.rb', line 37 def inject_user_extension user_model_path = "app/models/user.rb" return unless File.exist?(user_model_path) inject_into_file user_model_path, after: "class User < ApplicationRecord\n" do " include ActiveRegistration::UserExtensions\n" end rescue Errno::ENOENT say "User model not found. Add 'include ActiveRegistration::UserExtensions' to your User model.", :yellow end |