yaaf 0.2.0 → 1.0.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +1 -1
- data/lib/yaaf/form.rb +5 -20
- data/lib/yaaf/version.rb +1 -1
- metadata +6 -6
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 150ad0da1d4e4e76783819e3432e566ffae9be4894228d6dbca3540a1f8641b2
|
4
|
+
data.tar.gz: 01ad2b7331b363ded0cc2ee06c07dd63b1ce35917e614dc2bbd881963fd990aa
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: ad0fcc36cfeff881a36f9c89e2729ebb05523691e03546669091e322ef28f2b189a4d66f4141c48b11c19ff2fbbdfa917f0cdd34d1ca8c3a1383b4b4039b3801
|
7
|
+
data.tar.gz: c6a0535f1dfa8db916d2a2bb6d7c05b8d20272090440e124975775ab59f79d8bce4a2ac650109992bd5bc184c45491a28fbfdee7dd90e05abf09b2ded73502ae
|
data/README.md
CHANGED
@@ -50,7 +50,7 @@ If you want to learn more about Form Objects you can check out [these great arti
|
|
50
50
|
|
51
51
|
### Why YAAF?
|
52
52
|
|
53
|
-
- It is [
|
53
|
+
- It is [60 lines long](https://github.com/rootstrap/yaaf/blob/master/lib/yaaf/form.rb#L60). As you can imagine, we did no magic in such a few lines of code, we just leveraged Rails modules in order to provide our form objects with a Rails-like behavior. You can review the code, it's easy to understand.
|
54
54
|
|
55
55
|
- It provides a similar API to `ActiveModel` models so you can treat them interchangeably.
|
56
56
|
|
data/lib/yaaf/form.rb
CHANGED
@@ -30,18 +30,6 @@ module YAAF
|
|
30
30
|
|
31
31
|
attr_accessor :models
|
32
32
|
|
33
|
-
def promote_errors(model)
|
34
|
-
if rails_version_less_than_6_1?
|
35
|
-
model.errors.each do |attribute, message|
|
36
|
-
errors.add(attribute, message)
|
37
|
-
end
|
38
|
-
else
|
39
|
-
model.errors.each do |model_error|
|
40
|
-
errors.add(model_error.attribute, model_error.message)
|
41
|
-
end
|
42
|
-
end
|
43
|
-
end
|
44
|
-
|
45
33
|
def save_in_transaction(options)
|
46
34
|
::ActiveRecord::Base.transaction do
|
47
35
|
run_callbacks :save do
|
@@ -57,19 +45,16 @@ module YAAF
|
|
57
45
|
end
|
58
46
|
|
59
47
|
def validate_models
|
60
|
-
models.each
|
61
|
-
|
62
|
-
|
48
|
+
models.each { |model| promote_errors(model) if model.invalid? }
|
49
|
+
end
|
50
|
+
|
51
|
+
def promote_errors(model)
|
52
|
+
errors.merge!(model.errors)
|
63
53
|
end
|
64
54
|
|
65
55
|
def handle_transaction_rollback(exception)
|
66
56
|
run_callbacks :rollback
|
67
57
|
raise exception
|
68
58
|
end
|
69
|
-
|
70
|
-
def rails_version_less_than_6_1?
|
71
|
-
ActiveModel::VERSION::MAJOR < 6 ||
|
72
|
-
ActiveModel::VERSION::MAJOR == 6 && ActiveModel::VERSION::MINOR.zero?
|
73
|
-
end
|
74
59
|
end
|
75
60
|
end
|
data/lib/yaaf/version.rb
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: yaaf
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 1.0.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Juan Manuel Ramallo
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2021-
|
12
|
+
date: 2021-03-05 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: activemodel
|
@@ -17,7 +17,7 @@ dependencies:
|
|
17
17
|
requirements:
|
18
18
|
- - ">="
|
19
19
|
- !ruby/object:Gem::Version
|
20
|
-
version: '
|
20
|
+
version: '5.2'
|
21
21
|
- - "<"
|
22
22
|
- !ruby/object:Gem::Version
|
23
23
|
version: '7'
|
@@ -27,7 +27,7 @@ dependencies:
|
|
27
27
|
requirements:
|
28
28
|
- - ">="
|
29
29
|
- !ruby/object:Gem::Version
|
30
|
-
version: '
|
30
|
+
version: '5.2'
|
31
31
|
- - "<"
|
32
32
|
- !ruby/object:Gem::Version
|
33
33
|
version: '7'
|
@@ -37,7 +37,7 @@ dependencies:
|
|
37
37
|
requirements:
|
38
38
|
- - ">="
|
39
39
|
- !ruby/object:Gem::Version
|
40
|
-
version: '
|
40
|
+
version: '5.2'
|
41
41
|
- - "<"
|
42
42
|
- !ruby/object:Gem::Version
|
43
43
|
version: '7'
|
@@ -47,7 +47,7 @@ dependencies:
|
|
47
47
|
requirements:
|
48
48
|
- - ">="
|
49
49
|
- !ruby/object:Gem::Version
|
50
|
-
version: '
|
50
|
+
version: '5.2'
|
51
51
|
- - "<"
|
52
52
|
- !ruby/object:Gem::Version
|
53
53
|
version: '7'
|