aboutsummaryrefslogtreecommitdiffstats
path: root/activemodel/README
diff options
context:
space:
mode:
authorMikel Lindsaar <raasdnil@gmail.com>2010-01-19 11:29:01 +1100
committerMikel Lindsaar <raasdnil@gmail.com>2010-01-19 11:29:01 +1100
commit3cb0283fb6547982b35fda1e0d4af00071c026ae (patch)
treedd7413bfa82a9f2154706b4b94f970a5acfd8774 /activemodel/README
parent907754d7ee74c4f6f94c2457bd46e116bc82acbd (diff)
downloadrails-3cb0283fb6547982b35fda1e0d4af00071c026ae.tar.gz
rails-3cb0283fb6547982b35fda1e0d4af00071c026ae.tar.bz2
rails-3cb0283fb6547982b35fda1e0d4af00071c026ae.zip
Documentation cleanup and linkage for validator
Diffstat (limited to 'activemodel/README')
-rw-r--r--activemodel/README23
1 files changed, 23 insertions, 0 deletions
diff --git a/activemodel/README b/activemodel/README
index d2b51e2390..cf103b8d6d 100644
--- a/activemodel/README
+++ b/activemodel/README
@@ -193,3 +193,26 @@ functionality from the following modules:
{Learn more}[link:classes/ActiveModel/Validations.html]
+* Make custom validators
+
+ class Person
+ include ActiveModel::Validations
+ validates_with HasNameValidator
+ attr_accessor :name
+ end
+
+ class HasNameValidator < ActiveModel::Validator
+ def validate(record)
+ record.errors[:name] = "must exist" if record.name.blank?
+ end
+ end
+
+ p = ValidatorPerson.new
+ p.valid? #=> false
+ p.errors.full_messages #=> ["Name must exist"]
+ p.name = "Bob"
+ p.valid? #=> true
+
+ {Learn more}[link:classes/ActiveModel/Validator.html]
+
+ \ No newline at end of file