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:
parent
9e64dfad0d
commit
ad343d7263
2 changed files with 9 additions and 6 deletions
|
@ -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
|
||||||
|
|
|
@ -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
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue