aboutsummaryrefslogtreecommitdiffstats
path: root/guides/source/active_record_validations.md
diff options
context:
space:
mode:
authorTakehiro Adachi <takehiro0740@gmail.com>2013-08-03 23:05:11 +0900
committerTakehiro Adachi <takehiro0740@gmail.com>2013-08-04 18:37:12 +0900
commit740f7787e0b2db6bc476e85774f7a7044e1f983a (patch)
tree9953ad8f376b8f8a1bbffc73cfb7ea05f2722d63 /guides/source/active_record_validations.md
parentb67a80de9b55f91feb1c1056824f456710a96d0d (diff)
downloadrails-740f7787e0b2db6bc476e85774f7a7044e1f983a.tar.gz
rails-740f7787e0b2db6bc476e85774f7a7044e1f983a.tar.bz2
rails-740f7787e0b2db6bc476e85774f7a7044e1f983a.zip
Fix active_record_validations.md document, `:save` for `on:` validation helper was never available
According to the guide, ":save" value for the "on:" validation helper was available like below validates :name, presence: true, on: :save but this was never available according to the implementation of the valid? method, which is below # Runs all the validations within the specified context. Returns +true+ if # no errors are found, +false+ otherwise. # # If the argument is +false+ (default is +nil+), the context is set to <tt>:create</tt> if # <tt>new_record?</tt> is +true+, and to <tt>:update</tt> if it is not. # # Validations with no <tt>:on</tt> option will run no matter the context. Validations with # some <tt>:on</tt> option will only run in the specified context. def valid?(context = nil) context ||= (new_record? ? :create : :update) output = super(context) errors.empty? && output end So the documentation was always wrong since the PR proposed by @neerajdotname ( #10287 ) was rejected.
Diffstat (limited to 'guides/source/active_record_validations.md')
-rw-r--r--guides/source/active_record_validations.md5
1 files changed, 2 insertions, 3 deletions
diff --git a/guides/source/active_record_validations.md b/guides/source/active_record_validations.md
index d95b587e78..8154d4e1cc 100644
--- a/guides/source/active_record_validations.md
+++ b/guides/source/active_record_validations.md
@@ -243,7 +243,7 @@ line of code you can add the same kind of validation to several attributes.
All of them accept the `:on` and `:message` options, which define when the
validation should be run and what message should be added to the `errors`
collection if it fails, respectively. The `:on` option takes one of the values
-`:save` (the default), `:create` or `:update`. There is a default error
+`:create` or `:update`. There is a default error
message for each one of the validation helpers. These messages are used when
the `:message` option isn't specified. Let's take a look at each one of the
available helpers.
@@ -765,10 +765,9 @@ class Person < ActiveRecord::Base
validates :age, numericality: true, on: :update
# the default (validates on both create and update)
- validates :name, presence: true, on: :save
+ validates :name, presence: true
end
```
-The last line is in review state and as of now, it is not running in any version of Rails 3.2.x as discussed in this [issue](https://github.com/rails/rails/issues/10248)
Strict Validations
------------------