diff options
author | Aaron Patterson <aaron.patterson@gmail.com> | 2012-02-09 13:50:08 -0800 |
---|---|---|
committer | Aaron Patterson <aaron.patterson@gmail.com> | 2012-02-09 13:50:08 -0800 |
commit | e0cba3a0fab28f96dc9b5d3a714886583873a7d3 (patch) | |
tree | 8712fd8f0b53b7916ae8549decb86928302f00dc /activemodel/README.rdoc | |
parent | 6c50c07d8dbb0b014e68608fe72f807cbe7f5c45 (diff) | |
parent | e6c98b83cbf4eab8944601754cc8d0e627b55d6f (diff) | |
download | rails-e0cba3a0fab28f96dc9b5d3a714886583873a7d3.tar.gz rails-e0cba3a0fab28f96dc9b5d3a714886583873a7d3.tar.bz2 rails-e0cba3a0fab28f96dc9b5d3a714886583873a7d3.zip |
Merge branch 'master' into instance_reader
* master: (30 commits)
Bump tzinfo. 0.3.31 was released on November 6, 2011.
Fix GH #4909. Dependency on TZInfo move from AR to AS.
moving ordered hash to normal hash because ruby 1.9.3 hash defaultly ordered one
Refactored the OrderedHash related stuff
Replaced OrderedHash usage with Ruby 1.9 Hash
Replaced OrderedHash with Hash for ruby 1.9 series
removed unnecessary code
replacing the orderhash with hash for ruby-1.9
Clean up some wording.
Fix typo.
test title changed corresponding to the test
replaced active support ordered hash to ruby hash on active resource
PostgreSQL does not work in the same way of the other adapters
AR::Relation#pluck: improve to work with joins
Fix match docs
Fix attribute_before_type_cast for serialized attributes. Fixes #4837.
Fix failing request test
Fixes in AMo README
Update README to mention lint.
Trim down Active Model API by removing valid? and errors.full_messages
...
Diffstat (limited to 'activemodel/README.rdoc')
-rw-r--r-- | activemodel/README.rdoc | 17 |
1 files changed, 9 insertions, 8 deletions
diff --git a/activemodel/README.rdoc b/activemodel/README.rdoc index 9208145507..a7ba27ba73 100644 --- a/activemodel/README.rdoc +++ b/activemodel/README.rdoc @@ -9,10 +9,12 @@ Prior to Rails 3.0, if a plugin or gem developer wanted to have an object interact with Action Pack helpers, it was required to either copy chunks of code from Rails, or monkey patch entire helpers to make them handle objects that did not exactly conform to the Active Record interface. This would result -in code duplication and fragile applications that broke on upgrades. +in code duplication and fragile applications that broke on upgrades. Active +Model solves this by defining an explicit API. You can read more about the +API in ActiveModel::Lint::Tests. -Active Model solves this. You can include functionality from the following -modules: +Active Model also provides the following functionality to have ORM-like +behavior out of the box: * Add attribute magic to objects @@ -87,10 +89,9 @@ modules: errors.add(:name, "can not be nil") if name.nil? end - def ErrorsPerson.human_attribute_name(attr, options = {}) + def self.human_attribute_name(attr, options = {}) "Name" end - end person.errors.full_messages @@ -163,7 +164,7 @@ modules: * Custom validators - class Person + class ValidatorPerson include ActiveModel::Validations validates_with HasNameValidator attr_accessor :name @@ -171,7 +172,7 @@ modules: class HasNameValidator < ActiveModel::Validator def validate(record) - record.errors[:name] = "must exist" if record.name.blank? + record.errors[:name] = "must exist" if record.name.blank? end end @@ -182,7 +183,7 @@ modules: p.valid? # => true {Learn more}[link:classes/ActiveModel/Validator.html] - + == Download and installation |