Class: ModelGenerator

Inherits:
Genosaurus
  • Object
show all
Defined in:
lib/mack-active_record/model_generator/model_generator.rb

Overview

This will generate an ORM ‘model’ for your application based on the specified ORM you’re using.

Example without columns:

rake generate:model name=user

app/models/user.rb:

class User < ActiveRecord::Base
end

db/migrations/<number>_create_users.rb:

class CreateUsers < ActiveRecord::Migration
  self.up
  end

  self.down
  end
end

Example with columns:

rake generate:model name=user cols=username:string,email_address:string,created_at:datetime,updated_at:datetime

app/models/user.rb:

class User < ActiveRecord::Base
end

db/migrations/<number>_create_users.rb:

class CreateUsers < ActiveRecord::Migration
  self.up
    create_table :users do |t|
      t.column :username, :string
      t.column :email_address, :string
      t.column :created_at, :datetime
      t.column :updated_at, :datetime
  end

  self.down
    drop_table :users
  end
end

Instance Method Summary collapse

Instance Method Details

#after_generateObject

:nodoc:



42
43
44
# File 'lib/mack-active_record/model_generator/model_generator.rb', line 42

def after_generate # :nodoc:
  MigrationGenerator.run(@options.merge({"name" => "create_#{param(:name).plural}"}))
end

#testing_frameworkObject

:nodoc:



46
47
48
# File 'lib/mack-active_record/model_generator/model_generator.rb', line 46

def testing_framework # :nodoc:
  configatron.mack.testing_framework.to_s
end