activemodel 3.0.pre → 3.0.0.rc
Sign up to get free protection for your applications and to get access to all the features.
- data/CHANGELOG +44 -1
- data/MIT-LICENSE +1 -1
- data/README.rdoc +184 -0
- data/lib/active_model.rb +29 -19
- data/lib/active_model/attribute_methods.rb +167 -46
- data/lib/active_model/callbacks.rb +134 -0
- data/lib/active_model/conversion.rb +41 -1
- data/lib/active_model/deprecated_error_methods.rb +1 -1
- data/lib/active_model/dirty.rb +56 -12
- data/lib/active_model/errors.rb +205 -46
- data/lib/active_model/lint.rb +53 -17
- data/lib/active_model/locale/en.yml +26 -23
- data/lib/active_model/mass_assignment_security.rb +160 -0
- data/lib/active_model/mass_assignment_security/permission_set.rb +40 -0
- data/lib/active_model/mass_assignment_security/sanitizer.rb +23 -0
- data/lib/active_model/naming.rb +70 -5
- data/lib/active_model/observing.rb +40 -16
- data/lib/active_model/railtie.rb +2 -0
- data/lib/active_model/serialization.rb +59 -0
- data/lib/active_model/serializers/json.rb +17 -11
- data/lib/active_model/serializers/xml.rb +66 -123
- data/lib/active_model/test_case.rb +0 -2
- data/lib/active_model/translation.rb +64 -0
- data/lib/active_model/validations.rb +150 -68
- data/lib/active_model/validations/acceptance.rb +53 -33
- data/lib/active_model/validations/callbacks.rb +57 -0
- data/lib/active_model/validations/confirmation.rb +41 -23
- data/lib/active_model/validations/exclusion.rb +18 -13
- data/lib/active_model/validations/format.rb +28 -24
- data/lib/active_model/validations/inclusion.rb +18 -13
- data/lib/active_model/validations/length.rb +67 -65
- data/lib/active_model/validations/numericality.rb +83 -58
- data/lib/active_model/validations/presence.rb +10 -8
- data/lib/active_model/validations/validates.rb +110 -0
- data/lib/active_model/validations/with.rb +90 -23
- data/lib/active_model/validator.rb +186 -0
- data/lib/active_model/version.rb +3 -2
- metadata +79 -20
- data/README +0 -21
- data/lib/active_model/state_machine.rb +0 -70
- data/lib/active_model/state_machine/event.rb +0 -62
- data/lib/active_model/state_machine/machine.rb +0 -75
- data/lib/active_model/state_machine/state.rb +0 -47
- data/lib/active_model/state_machine/state_transition.rb +0 -40
- data/lib/active_model/validations_repair_helper.rb +0 -35
@@ -1,40 +0,0 @@
|
|
1
|
-
module ActiveModel
|
2
|
-
module StateMachine
|
3
|
-
class StateTransition
|
4
|
-
attr_reader :from, :to, :options
|
5
|
-
|
6
|
-
def initialize(opts)
|
7
|
-
@from, @to, @guard, @on_transition = opts[:from], opts[:to], opts[:guard], opts[:on_transition]
|
8
|
-
@options = opts
|
9
|
-
end
|
10
|
-
|
11
|
-
def perform(obj)
|
12
|
-
case @guard
|
13
|
-
when Symbol, String
|
14
|
-
obj.send(@guard)
|
15
|
-
when Proc
|
16
|
-
@guard.call(obj)
|
17
|
-
else
|
18
|
-
true
|
19
|
-
end
|
20
|
-
end
|
21
|
-
|
22
|
-
def execute(obj, *args)
|
23
|
-
case @on_transition
|
24
|
-
when Symbol, String
|
25
|
-
obj.send(@on_transition, *args)
|
26
|
-
when Proc
|
27
|
-
@on_transition.call(obj, *args)
|
28
|
-
end
|
29
|
-
end
|
30
|
-
|
31
|
-
def ==(obj)
|
32
|
-
@from == obj.from && @to == obj.to
|
33
|
-
end
|
34
|
-
|
35
|
-
def from?(value)
|
36
|
-
@from == value
|
37
|
-
end
|
38
|
-
end
|
39
|
-
end
|
40
|
-
end
|
@@ -1,35 +0,0 @@
|
|
1
|
-
module ActiveModel
|
2
|
-
module ValidationsRepairHelper
|
3
|
-
extend ActiveSupport::Concern
|
4
|
-
|
5
|
-
module ClassMethods
|
6
|
-
def repair_validations(*model_classes)
|
7
|
-
setup do
|
8
|
-
@_stored_callbacks = {}
|
9
|
-
model_classes.each do |k|
|
10
|
-
@_stored_callbacks[k] = k._validate_callbacks.dup
|
11
|
-
end
|
12
|
-
end
|
13
|
-
teardown do
|
14
|
-
model_classes.each do |k|
|
15
|
-
k._validate_callbacks = @_stored_callbacks[k]
|
16
|
-
k.__update_callbacks(:validate)
|
17
|
-
end
|
18
|
-
end
|
19
|
-
end
|
20
|
-
end
|
21
|
-
|
22
|
-
def repair_validations(*model_classes, &block)
|
23
|
-
@__stored_callbacks = {}
|
24
|
-
model_classes.each do |k|
|
25
|
-
@__stored_callbacks[k] = k._validate_callbacks.dup
|
26
|
-
end
|
27
|
-
return block.call
|
28
|
-
ensure
|
29
|
-
model_classes.each do |k|
|
30
|
-
k._validate_callbacks = @__stored_callbacks[k]
|
31
|
-
k.__update_callbacks(:validate)
|
32
|
-
end
|
33
|
-
end
|
34
|
-
end
|
35
|
-
end
|