Class: Petergate::Generators::InstallGenerator
- Inherits:
-
Rails::Generators::Base
- Object
- Rails::Generators::Base
- Petergate::Generators::InstallGenerator
- Includes:
- Rails::Generators::Migration
- Defined in:
- lib/generators/petergate/install_generator.rb
Class Method Summary collapse
Instance Method Summary collapse
-
#create_migrations ⇒ Object
RUBY end end.
- #insert_into_user_model ⇒ Object
Class Method Details
.next_migration_number(path) ⇒ Object
11 12 13 14 |
# File 'lib/generators/petergate/install_generator.rb', line 11 def self.next_migration_number(path) sleep 1 Time.now.utc.strftime("%Y%m%d%H%M%S") end |
Instance Method Details
#create_migrations ⇒ Object
RUBY
end
end
42 43 44 45 46 47 |
# File 'lib/generators/petergate/install_generator.rb', line 42 def create_migrations Dir["#{self.class.source_root}/migrations/*.rb"].sort.each do |filepath| name = File.basename(filepath) migration_template "migrations/#{name}", "db/migrate/#{name}" end end |
#insert_into_user_model ⇒ Object
16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 |
# File 'lib/generators/petergate/install_generator.rb', line 16 def insert_into_user_model inject_into_file "app/models/user.rb", after: /^class\sUser < ActiveRecord::Base|^class User < ApplicationRecord/ do <<-'RUBY' ############################################################################################ ## PeterGate Roles ## ## The :user role is added by default and shouldn't be included in this list. ## ## The :root_admin can access any page regardless of access settings. Use with caution! ## ## The multiple option can be set to true if you need users to have multiple roles. ## petergate(roles: [:admin, :editor], multiple: false) ## ############################################################################################ RUBY end end |