aboutsummaryrefslogtreecommitdiffstats
path: root/guides/source/active_record_migrations.md
diff options
context:
space:
mode:
authorYves Senn <yves.senn@gmail.com>2014-06-10 10:21:15 +0200
committerYves Senn <yves.senn@gmail.com>2014-06-10 10:25:57 +0200
commitfcd0ac066e0959a9f4fa4459a27e041abe8eb52a (patch)
tree6021f49acfde1568e750f9d7a2a726276f3ff6eb /guides/source/active_record_migrations.md
parent90fb179cb3fb6f1decd7e42227cd8e0251832d7b (diff)
downloadrails-fcd0ac066e0959a9f4fa4459a27e041abe8eb52a.tar.gz
rails-fcd0ac066e0959a9f4fa4459a27e041abe8eb52a.tar.bz2
rails-fcd0ac066e0959a9f4fa4459a27e041abe8eb52a.zip
docs, refactor docs about column modifiers. [ci skip] [Matthew Draper & Yves Senn]
This is a follow up to #15602 which rendered the guides in a weird state: > You can also specify some options just after the field type between curly braces. You can use the following modifiers: > `null` Allows or disallows `NULL` values in the column. > NOTE: `null` and `default` cannot be specified via command line. The modifiers are now moved into a separate section. The generator simply referes to that section. Related to #15583. /cc @JuanitoFatas
Diffstat (limited to 'guides/source/active_record_migrations.md')
-rw-r--r--guides/source/active_record_migrations.md32
1 files changed, 20 insertions, 12 deletions
diff --git a/guides/source/active_record_migrations.md b/guides/source/active_record_migrations.md
index ef95a28564..5a550d9e55 100644
--- a/guides/source/active_record_migrations.md
+++ b/guides/source/active_record_migrations.md
@@ -293,19 +293,10 @@ end
You can append as many column name/type pairs as you want.
-### Supported Type Modifiers
+### Passing Modifiers
-You can also specify some options just after the field type between curly
-braces. You can use the following modifiers:
-
-* `limit` Sets the maximum size of the `string/text/binary/integer` fields.
-* `precision` Defines the precision for the `decimal` fields, representing the total number of digits in the number.
-* `scale` Defines the scale for the `decimal` fields, representing the number of digits after the decimal point.
-* `polymorphic` Adds a `type` column for `belongs_to` associations.
-* `null` Allows or disallows `NULL` values in the column.
-* `default` Allows to set a default value on the column. NOTE: If using a dynamic value (such as date), the default will only be calculated the first time (e.g. on the date the migration is applied.)
-
-NOTE: `null` and `default` cannot be specified via command line.
+Some commonly used [type modifiers](#column-modifiers) can be passed directly on
+the command line. They are enclosed by curly braces and follow the field type:
For instance, running:
@@ -324,6 +315,8 @@ class AddDetailsToProducts < ActiveRecord::Migration
end
```
+TIP: Have a look at the generators help output for further details.
+
Writing a Migration
-------------------
@@ -441,6 +434,21 @@ change_column_default :products, :approved, false
This sets `:name` field on products to a `NOT NULL` column and the default
value of the `:approved` field to false.
+### Column Modifiers
+
+Column modifiers can be applied when creating or changing a column:
+
+* `limit` Sets the maximum size of the `string/text/binary/integer` fields.
+* `precision` Defines the precision for the `decimal` fields, representing the total number of digits in the number.
+* `scale` Defines the scale for the `decimal` fields, representing the number of digits after the decimal point.
+* `polymorphic` Adds a `type` column for `belongs_to` associations.
+* `null` Allows or disallows `NULL` values in the column.
+* `default` Allows to set a default value on the column. NOTE: If using a dynamic value (such as date), the default will only be calculated the first time (e.g. on the date the migration is applied.)
+* `index` Adds an index for the column.
+
+Some adapters may support additional options; see the adapter specific API docs
+for further information.
+
### When Helpers aren't Enough
If the helpers provided by Active Record aren't enough you can use the `execute`