diff options
author | José Valim <jose.valim@gmail.com> | 2009-06-28 11:56:44 +0200 |
---|---|---|
committer | José Valim <jose.valim@gmail.com> | 2009-06-28 11:56:44 +0200 |
commit | 496dde95fbedddad5d04afbe660ff1544229032c (patch) | |
tree | 4d6bf2643cd217d1d36a3afff26551480af4c6c5 /railties/lib/generators/active_record | |
parent | c03585aa8da175888ad0893ef29d887f87fb749b (diff) | |
download | rails-496dde95fbedddad5d04afbe660ff1544229032c.tar.gz rails-496dde95fbedddad5d04afbe660ff1544229032c.tar.bz2 rails-496dde95fbedddad5d04afbe660ff1544229032c.zip |
Added migrations and make base generators be lazy loaded.
Diffstat (limited to 'railties/lib/generators/active_record')
3 files changed, 9 insertions, 8 deletions
diff --git a/railties/lib/generators/active_record/model/model_generator.rb b/railties/lib/generators/active_record/model/model_generator.rb index 53592c222f..32a2ed15e4 100644 --- a/railties/lib/generators/active_record/model/model_generator.rb +++ b/railties/lib/generators/active_record/model/model_generator.rb @@ -1,3 +1,5 @@ +require 'generators/active_record' + module ActiveRecord module Generators class ModelGenerator < Base @@ -5,8 +7,7 @@ module ActiveRecord check_class_collision - conditional_class_option :timestamps - conditional_class_option :migration + conditional_class_options :migration, :timestamps class_option :parent, :type => :string, :desc => "The parent class for the generated model" @@ -15,12 +16,10 @@ module ActiveRecord template 'model.rb', File.join('app/models', class_path, "#{file_name}.rb") end - # TODO Add migration support def create_migration_file if options[:migration] && options[:parent].nil? -# m.migration_template 'migration.rb', 'db/migrate', :assigns => { -# :migration_name => "Create#{class_name.pluralize.gsub(/::/, '')}" -# }, :migration_file_name => "create_#{file_path.gsub(/\//, '_').pluralize}" + file_name = "create_#{file_path.gsub(/\//, '_').pluralize}" + migration_template "migration.rb", "db/migrate/#{file_name}.rb" end end diff --git a/railties/lib/generators/active_record/model/templates/migration.rb b/railties/lib/generators/active_record/model/templates/migration.rb index 382fd1156e..542e9db2fc 100644 --- a/railties/lib/generators/active_record/model/templates/migration.rb +++ b/railties/lib/generators/active_record/model/templates/migration.rb @@ -1,10 +1,10 @@ -class <%= migration_name %> < ActiveRecord::Migration +class <%= @migration_class_name %> < ActiveRecord::Migration def self.up create_table :<%= table_name %> do |t| <% for attribute in attributes -%> t.<%= attribute.type %> :<%= attribute.name %> <% end -%> -<% unless options[:skip_timestamps] %> +<% if options[:timestamps] %> t.timestamps <% end -%> end diff --git a/railties/lib/generators/active_record/observer/observer_generator.rb b/railties/lib/generators/active_record/observer/observer_generator.rb index 5bc9da34d1..fa51c23336 100644 --- a/railties/lib/generators/active_record/observer/observer_generator.rb +++ b/railties/lib/generators/active_record/observer/observer_generator.rb @@ -1,3 +1,5 @@ +require 'generators/active_record' + module ActiveRecord module Generators class ObserverGenerator < Base |