Class: RigidWorkflow::Generators::InstallGenerator

Inherits:
Rails::Generators::Base
  • Object
show all
Includes:
Rails::Generators::Migration
Defined in:
lib/generators/rigid_workflow/install_generator.rb

Overview

Installs RigidWorkflow into a Rails application. Generates initializer, routes, and optional migrations.

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.next_migration_number(dirname) ⇒ Object

Standard Rails migration timestamp format



21
22
23
24
25
# File 'lib/generators/rigid_workflow/install_generator.rb', line 21

def self.next_migration_number(dirname)
  next_num = Time.now.utc.strftime("%Y%m%d%H%M%S").to_i
  current_num = current_migration_number(dirname)
  next_num <= current_num ? (current_num + 1).to_s : next_num.to_s
end

Instance Method Details

#installObject



27
28
29
30
31
32
33
34
35
36
37
38
39
# File 'lib/generators/rigid_workflow/install_generator.rb', line 27

def install
  template "initializer.rb.erb", "config/initializers/rigid_workflow.rb"
  route "mount RigidWorkflow::Engine => '/admin/rigid_workflow'"

  if options[:with_migrations]
    migration_template(
      "migration.rb.erb",
      "db/migrate/create_rigid_workflow_tables.rb"
    )
  end

  display_success_message
end