Sha256: 68037e0e929073be161010edd53f52e48b1e44a78b7d6dac23d225d79773dd8f
Contents?: true
Size: 1.66 KB
Versions: 3
Compression:
Stored size: 1.66 KB
Contents
# 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 # include DataMapper::Resource # # end # db/migrations/<number>_create_users.rb: # migration <number>, :create_users do # up do # end # # down do # 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 # include DataMapper::Resource # # property :username, String # property :email_address, String # property :created_at, DateTime # property :updated_at, DateTime # end # db/migrations/<number>_create_users.rb: # migration <number>, :create_users do # up do # create_table :users do # column :username, String, :size => 50 # column :email, String, :size => 50 # column :created_at, DateTime # column :updated_at, DateTime # end # end # # down do # drop_table :users # end # end class ModelGenerator < Genosaurus require_param :name def setup # :nodoc: @name_singular = param(:name).singular.underscore @name_plural = @name_singular.plural.underscore @name_singular_camel = @name_singular.camelcase @name_plural_camel = @name_plural.camelcase end def after_generate # :nodoc: MigrationGenerator.run(@options.merge({"name" => "create_#{@name_plural}"})) end def migration_columns # :nodoc: [Mack::Genosaurus::Orm::ModelColumn.new(param(:name), "id:serial"), columns].flatten end end
Version data entries
3 entries across 3 versions & 1 rubygems