Class: ExtraUserAttributesGenerator

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

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Instance Attribute Details

#class_nameObject

Returns the value of attribute class_name.



27
28
29
# File 'lib/generators/extra_user_attributes/extra_user_attributes_generator.rb', line 27

def class_name
  @class_name
end

#emitterObject

Returns the value of attribute emitter.



27
28
29
# File 'lib/generators/extra_user_attributes/extra_user_attributes_generator.rb', line 27

def emitter
  @emitter
end

Class Method Details

.next_migration_number(dirname) ⇒ Object



29
30
31
32
33
34
35
# File 'lib/generators/extra_user_attributes/extra_user_attributes_generator.rb', line 29

def self.next_migration_number(dirname)
  if ActiveRecord::Base.timestamped_migrations
    Time.now.utc.strftime("%Y%m%d%H%M%S")
  else
    "%.3d" % (current_migration_number(dirname) + 1)
  end
end

Instance Method Details

#manifestObject



11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
# File 'lib/generators/extra_user_attributes/extra_user_attributes_generator.rb', line 11

def manifest
  self.class_name = "User"
  self.emitter = MigrationEmitter.entity(:users)
  self.emitter.column :confirmation_token, :string
  self.emitter.column :confirmed_at, :datetime
  self.emitter.column :confirmation_sent_at, :datetime
  self.emitter.column :failed_attempts, :integer, :default=>0
  self.emitter.column :unlock_token, :string
  self.emitter.column :locked_at, :datetime
  self.emitter.column :authentication_token, :string
  self.emitter.column :login, :string
  self.emitter.column :name, :string

  migration_template 'add_fields_migration.rb', "db/migrate/add_fields_to_users"

end