1
0
Fork 0
mirror of https://github.com/rails/rails.git synced 2022-11-09 12:12:34 -05:00

Use Rails 3.1 change method in 'add_' migration generator

This commit is contained in:
Prem Sichanugrist 2011-01-01 01:19:56 +07:00 committed by Aaron Patterson
parent 9e64dfad0d
commit ad343d7263
2 changed files with 9 additions and 6 deletions

View file

@ -1,4 +1,11 @@
class <%= migration_class_name %> < ActiveRecord::Migration class <%= migration_class_name %> < ActiveRecord::Migration
<%- if migration_action == 'add' -%>
def change
<% attributes.each do |attribute| -%>
add_column :<%= table_name %>, :<%= attribute.name %>, :<%= attribute.type %>
<%- end -%>
end
<%- else -%>
def up def up
<% attributes.each do |attribute| -%> <% attributes.each do |attribute| -%>
<%- if migration_action -%> <%- if migration_action -%>
@ -14,4 +21,5 @@ class <%= migration_class_name %> < ActiveRecord::Migration
<%- end -%> <%- end -%>
<%- end -%> <%- end -%>
end end
<%- end -%>
end end

View file

@ -34,15 +34,10 @@ class MigrationGeneratorTest < Rails::Generators::TestCase
run_generator [migration, "title:string", "body:text"] run_generator [migration, "title:string", "body:text"]
assert_migration "db/migrate/#{migration}.rb" do |content| assert_migration "db/migrate/#{migration}.rb" do |content|
assert_method :up, content do |up| assert_method :change, content do |up|
assert_match /add_column :posts, :title, :string/, up assert_match /add_column :posts, :title, :string/, up
assert_match /add_column :posts, :body, :text/, up assert_match /add_column :posts, :body, :text/, up
end end
assert_method :down, content do |down|
assert_match /remove_column :posts, :title/, down
assert_match /remove_column :posts, :body/, down
end
end end
end end