diff options
author | Mauro George <maurogot@gmail.com> | 2014-06-01 09:55:11 -0300 |
---|---|---|
committer | Mauro George <maurogot@gmail.com> | 2014-06-01 09:55:11 -0300 |
commit | 9477f4372fac1a18aad6fbce249a1bfc03e0b61f (patch) | |
tree | de7bc6c4e0807509683acc3f45daaded99444105 /guides | |
parent | 3051356a8005518392f3414184daf933f5597092 (diff) | |
download | rails-9477f4372fac1a18aad6fbce249a1bfc03e0b61f.tar.gz rails-9477f4372fac1a18aad6fbce249a1bfc03e0b61f.tar.bz2 rails-9477f4372fac1a18aad6fbce249a1bfc03e0b61f.zip |
Create Changing Columns on migrations guides
[ci skip]
Diffstat (limited to 'guides')
-rw-r--r-- | guides/source/migrations.md | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/guides/source/migrations.md b/guides/source/migrations.md index 6742c05946..221251adf4 100644 --- a/guides/source/migrations.md +++ b/guides/source/migrations.md @@ -415,6 +415,28 @@ end removes the `description` and `name` columns, creates a `part_number` string column and adds an index on it. Finally it renames the `upccode` column. +### Changing Columns + +Like the `remove_column` and `add_column` Rails provides the `change_column`. + +```ruby +change_column :products, :part_number, :text +``` + +This changes the column part_number on products table to be a text. + +Besides the `change_column`, the `change_column_null` and +`change_column_default` are used specifically to change the null and default +values of a column. + +```ruby +change_column_null :products, :name, false +change_column_default :products, :approved, false +``` + +This sets name on products to a NOT NULL column and the default value +of approved as false. + ### When Helpers aren't Enough If the helpers provided by Active Record aren't enough you can use the `execute` |