@@ -8,19 +8,19 @@ module Field
8
8
NAME_REGEX = /\A [a-z][a-z_0-9]*\z / . freeze
9
9
10
10
included do
11
- enum accessibility : { read_and_write : 0 , readonly : 1 , hidden : 2 } ,
11
+ enum accessibility : { read_and_write : 0 , readonly : 1 , hidden : 2 } ,
12
12
_prefix : :access
13
13
14
14
serialize :validations
15
15
serialize :options
16
16
17
17
validates :name ,
18
18
presence : true ,
19
- uniqueness : { scope : :form } ,
20
- exclusion : { in : FormCore . reserved_names } ,
21
- format : { with : NAME_REGEX }
19
+ uniqueness : { scope : :form } ,
20
+ exclusion : { in : FormCore . reserved_names } ,
21
+ format : { with : NAME_REGEX }
22
22
validates :accessibility ,
23
- inclusion : { in : accessibilities . keys . map ( &:to_sym ) }
23
+ inclusion : { in : accessibilities . keys . map ( &:to_sym ) }
24
24
25
25
after_initialize do
26
26
self . validations ||= { }
@@ -54,9 +54,7 @@ def interpret_to(model, overrides: {})
54
54
default_value = overrides . fetch ( :default_value , self . default_value )
55
55
model . attribute name , stored_type , default : default_value
56
56
57
- if accessibility == :readonly
58
- model . attr_readonly name
59
- end
57
+ model . attr_readonly name if accessibility == :readonly
60
58
61
59
interpret_validations_to model , accessibility , overrides
62
60
interpret_extra_to model , accessibility , overrides
@@ -66,22 +64,18 @@ def interpret_to(model, overrides: {})
66
64
67
65
protected
68
66
69
- def interpret_validations_to ( model , accessibility , overrides = { } )
70
- validations = overrides . fetch ( :validations , ( self . validations || { } ) )
71
- validation_options = overrides . fetch ( :validation_options ) { self . options . fetch ( :validation , { } ) }
67
+ def interpret_validations_to ( model , accessibility , overrides = { } )
68
+ validations = overrides . fetch ( :validations , ( self . validations || { } ) )
69
+ validation_options = overrides . fetch ( :validation_options ) { self . options . fetch ( :validation , { } ) }
72
70
73
- if accessibility == :read_and_write && validations . present?
74
- model . validates name , **validations , **validation_options
71
+ model . validates name , **validations , **validation_options if accessibility == :read_and_write && validations . present?
75
72
end
76
- end
77
73
78
- def interpret_extra_to ( _model , _accessibility , _overrides = { } ) ; end
74
+ def interpret_extra_to ( _model , _accessibility , _overrides = { } ) ; end
79
75
80
- def check_model_validity! ( model )
81
- unless model . is_a? ( Class ) && model < ::FormCore ::VirtualModel
82
- raise ArgumentError , "#{ model } must be a #{ ::FormCore ::VirtualModel } 's subclass"
76
+ def check_model_validity! ( model )
77
+ raise ArgumentError , "#{ model } must be a #{ ::FormCore ::VirtualModel } 's subclass" unless model . is_a? ( Class ) && model < ::FormCore ::VirtualModel
83
78
end
84
- end
85
79
end
86
80
end
87
81
end
0 commit comments