Class: ActiveadminTherole::Generators::InstallGenerator
- Inherits:
-
Rails::Generators::Base
- Object
- Rails::Generators::Base
- ActiveadminTherole::Generators::InstallGenerator
- Includes:
- Rails::Generators::Migration
- Defined in:
- lib/generators/activeadmin_therole/install/install_generator.rb
Class Method Summary collapse
Instance Method Summary collapse
-
#activeadmin_install ⇒ Object
Action: generate active_admin:install.
-
#install ⇒ Object
Execute all steps for Devise, ActiveAdmin and TheRole.
- #invoke_db_migrate ⇒ Object
-
#therole_install ⇒ Object
Action: generate the_role install.
-
#user_model_create ⇒ Object
Action: generate devise User.
Class Method Details
.next_migration_number(dirname) ⇒ Object
7 8 9 10 11 |
# File 'lib/generators/activeadmin_therole/install/install_generator.rb', line 7 def self.next_migration_number(dirname) orm = Rails.configuration.generators.[:rails][:orm] require "rails/generators/#{orm}" "#{orm.to_s.camelize}::Generators::Base".constantize.next_migration_number(dirname) end |
Instance Method Details
#activeadmin_install ⇒ Object
Action: generate active_admin:install
14 15 16 17 18 19 20 |
# File 'lib/generators/activeadmin_therole/install/install_generator.rb', line 14 def activeadmin_install if File.exists?(File.join(destination_root, "config", "initializers", "active_admin.rb")) log :generate, "No need to install ActiveAdmin, already done." else generate "active_admin:install" end end |
#install ⇒ Object
Execute all steps for Devise, ActiveAdmin and TheRole
50 51 52 53 54 55 56 57 |
# File 'lib/generators/activeadmin_therole/install/install_generator.rb', line 50 def install if File.exists?(File.join(destination_root, "app", "admin", "roles.rb")) log :generate, "No need to copy admin/roles.rb, already done." else # copy our section copy_file "app/admin/roles.rb", "app/admin/roles.rb" end end |
#invoke_db_migrate ⇒ Object
45 46 47 |
# File 'lib/generators/activeadmin_therole/install/install_generator.rb', line 45 def invoke_db_migrate rake "db:migrate" if ActiveRecord::Migrator.needs_migration? end |
#therole_install ⇒ Object
Action: generate the_role install
32 33 34 35 36 37 38 39 40 41 42 43 |
# File 'lib/generators/activeadmin_therole/install/install_generator.rb', line 32 def therole_install if File.exists?(File.join(destination_root, "config", "initializers", "the_role.rb")) log :generate, "No need to install TheRole, already done." else generate "the_role", "install" rake "the_role_engine:install:migrations" migration_template 'db/migrate/add_role_id_to_user.rb', 'db/migrate/add_role_id_to_user.rb' inject_into_file File.join(destination_root, "app", "models", "user.rb"), "\n\tinclude TheRoleUserModel\n\n", after: "class User < ActiveRecord::Base\n" rake "db:migrate" if ActiveRecord::Migrator.needs_migration? generate "the_role", "admin" end end |
#user_model_create ⇒ Object
Action: generate devise User
23 24 25 26 27 28 29 |
# File 'lib/generators/activeadmin_therole/install/install_generator.rb', line 23 def user_model_create if File.exists?(File.join(destination_root, "app", "models", "user.rb")) log :generate, "No need to create User model, already done." else generate "devise", "User" end end |