caprese 0.3.20 → 0.3.21

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: f20459249bd9aa768296fff0603eacaec3d53c99
4
- data.tar.gz: 667f7a0cd853d8f69099a78ecfaa76c48d15f5de
3
+ metadata.gz: 7099eedd3a4b000bb8750e27d9fe55b02381e2e2
4
+ data.tar.gz: 6d8697e726e6b306c5091f22574daeb790c2d920
5
5
  SHA512:
6
- metadata.gz: 17f2e85ce1abeddd71ee15ce76c68e425b7f6cc8a4e2f71732cdebcd37df424dd8927716a6927cdb05ed861bd09cc3b1fdddb0ad8f8f39ba18b7cf1b905e6a17
7
- data.tar.gz: f936557de63859192d37419ba50df905949835df4359e0ccfde5ea058b7093f4a7b4f538a5e76496accc17e8dfc55ff1f169a56950685fe47bddb7254cd76b79
6
+ metadata.gz: 10a73eae7ff8a403c3f68946c476228dfda16b2cff0a4775b167d962e07e4ed6242d0ff946989c09d7fbbc1b75d6e412a6b31d8752d3675d80807f77f82f81a9
7
+ data.tar.gz: d4f5e94178e5e0d6a01bfe511f1337d50a49f9e4c2d6162686a7701ea810d9cb85bc13603cbfe7f87ac72d7527003b10f2e7a38c8a876ba23d3c337b51c5a8e3
data/CHANGELOG.md CHANGED
@@ -117,3 +117,7 @@
117
117
  * Add `Caprese::Controller#resource_type_aliases` method that returns object mapping type aliases to actual types for the application
118
118
  * Add `Caprese::Record.caprese_field_aliases` method that returns object mapping field aliases to actual fields for the record
119
119
  * Add `Caprese::Record.caprese_type` method that returns singular symbol indicating the type to use when serializing the record. (`Caprese::Serializer.json_api_key` now uses this.)
120
+
121
+ ## 0.3.21
122
+
123
+ * Change `::Record.caprese_style_errors` to false by default so non-Caprese errors render normally
@@ -13,23 +13,24 @@ module Caprese
13
13
  # [
14
14
  # { "key"=>"not_found", "field"=>"attachment.file", "message"=>"Could not find a file at ..."}
15
15
  # ]
16
- class AssociatedValidator < ActiveModel::EachValidator
16
+ class AssociatedValidator < ActiveRecord::Validations::AssociatedValidator
17
17
  def validate_each(record, attribute, value)
18
- Array(value).reject { |r| r.marked_for_destruction? || r.valid? }.each do |invalid_record|
19
- invalid_record.errors.to_a.each do |error|
20
- field_name = error.field ? "#{attribute}.#{error.field}" : attribute
21
- record.errors.add(field_name, error.code, { t: error.t }.merge(value: invalid_record))
18
+ if Caprese::Record.caprese_style_errors
19
+ Array(value).reject { |r| r.marked_for_destruction? || r.valid? }.each do |invalid_record|
20
+ invalid_record.errors.to_a.each do |error|
21
+ field_name = error.field ? "#{attribute}.#{error.field}" : attribute
22
+ record.errors.add(field_name, error.code, { t: error.t }.merge(value: invalid_record))
23
+ end
22
24
  end
25
+ else
26
+ super
23
27
  end
24
28
  end
25
29
  end
26
30
 
27
31
  module ClassMethods
28
32
  def validates_associated(*attr_names)
29
- validates_with(
30
- (Caprese::Record.caprese_style_errors ? Caprese::Record : ActiveRecord::Validations)::AssociatedValidator,
31
- _merge_attributes(attr_names)
32
- )
33
+ validates_with Caprese::Record::AssociatedValidator, _merge_attributes(attr_names)
33
34
  end
34
35
  end
35
36
  end
@@ -12,7 +12,7 @@ module Caprese
12
12
  include Aliasing
13
13
 
14
14
  mattr_accessor :caprese_style_errors
15
- @@caprese_style_errors = true
15
+ @@caprese_style_errors = false
16
16
 
17
17
  # @return [Errors] a cached instance of the model errors class
18
18
  def errors
@@ -1,3 +1,3 @@
1
1
  module Caprese
2
- VERSION = '0.3.20'
2
+ VERSION = '0.3.21'
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: caprese
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.20
4
+ version: 0.3.21
5
5
  platform: ruby
6
6
  authors:
7
7
  - Nick Landgrebe
@@ -10,7 +10,7 @@ authors:
10
10
  autorequire:
11
11
  bindir: exe
12
12
  cert_chain: []
13
- date: 2017-04-06 00:00:00.000000000 Z
13
+ date: 2017-04-19 00:00:00.000000000 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: active_model_serializers