blob: 03287fac7a604e6421e885d99c9996156be12cdc (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
|
*Rails 3.1.0 (unreleased)*
* Add support for proc or lambda as an option for InclusionValidator,
ExclusionValidator, and FormatValidator [Prem Sichanugrist]
You can now supply Proc, lambda, or anything that respond to #call in those
validations, and it will be called with current record as an argument.
That given proc or lambda must returns an object which respond to #include? for
InclusionValidator and ExclusionValidator, and returns a regular expression
object for FormatValidator.
* Added ActiveModel::SecurePassword to encapsulate dead-simple password usage with BCrypt encryption and salting [DHH]
* ActiveModel::AttributeMethods allows attributes to be defined on demand [Alexander Uvarov]
*Rails 3.0.2 (unreleased)*
* No changes
*Rails 3.0.1 (October 15, 2010)*
* No Changes, just a version bump.
*Rails 3.0.0 (August 29, 2010)*
* Added ActiveModel::MassAssignmentSecurity [Eric Chapweske, Josh Kalderimis]
* JSON supports a custom root option: to_json(:root => 'custom') #4515 [Jatinder Singh]
* #new_record? and #destroyed? were removed from ActiveModel::Lint. Use
persisted? instead. A model is persisted if it's not a new_record? and it was
not destroyed? [MG]
* Added validations reflection in ActiveModel::Validations [JV]
Model.validators
Model.validators_on(:field)
* #to_key was added to ActiveModel::Lint so we can generate DOM IDs for
AMo objects with composite keys [MG]
* ActiveModel::Observer#add_observer!
It has a custom hook to define after_find that should really be in a
ActiveRecord::Observer subclass:
def add_observer!(klass)
klass.add_observer(self)
klass.class_eval 'def after_find() end' unless klass.respond_to?(:after_find)
end
* Change the ActiveModel::Base.include_root_in_json default to true for Rails 3 [DHH]
* Add validates_format_of :without => /regexp/ option. #430 [Elliot Winkler, Peer Allan]
Example :
validates_format_of :subdomain, :without => /www|admin|mail/
* Introduce validates_with to encapsulate attribute validations in a class. #2630 [Jeff Dean]
* Extracted from Active Record and Active Resource.
|