Class: LogicalAuthz::GroupModelGenerator

Inherits:
ModelGenerator show all
Defined in:
lib/logical_authz/generators/models/generator.rb

Instance Method Summary collapse

Methods inherited from ModelGenerator

#create_initializer, #create_seeds, #generate_group_model, #generate_permissions_model, next_migration_number

Methods inherited from LogicalAuthzGenerator

#controllers, #models, #routes, #specs

Instance Method Details

#create_migrationObject



77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
# File 'lib/logical_authz/generators/models/generator.rb', line 77

def create_migration
  dest_file = "db/migrate/create_#{group_field}.rb"
  begin
    migration_template "migrations/create_groups.rb", dest_file
  rescue Rails::Generators::Error
    say_status :exist, dest_file, :blue
  end

  dest_file = "db/migrate/create_#{user_table}_#{group_table}.rb"
  begin
    migration_template "migrations/create_users_groups.rb", dest_file
  rescue Rails::Generators::Error
    say_status :exist, dest_file, :blue
  end
end

#create_modelObject



69
70
71
# File 'lib/logical_authz/generators/models/generator.rb', line 69

def create_model
  template "app/models/group.rb", "app/models/#{group_field}.rb"
end

#inject_habtm_groupsObject



73
74
75
# File 'lib/logical_authz/generators/models/generator.rb', line 73

def inject_habtm_groups
  inject_into_class "app/models/#{user_field}.rb", user_class, "  has_and_belongs_to_many :#{group_table}\n"
end