better_record 0.8.0 → 0.8.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/app/models/better_record/base.rb +3 -1
- data/app/models/better_record/current.rb +2 -0
- data/app/models/better_record/logged_action.rb +2 -0
- data/app/models/better_record/table_size.rb +2 -0
- data/config/initializers/active_record/money_type.rb +2 -0
- data/config/initializers/concerns.rb +2 -0
- data/config/initializers/core_ext/boolean.rb +2 -0
- data/config/initializers/core_ext/date.rb +2 -0
- data/config/initializers/core_ext/integer.rb +2 -0
- data/config/initializers/core_ext/string.rb +2 -0
- data/config/initializers/dkim.rb +2 -0
- data/config/initializers/filter_parameter_logging.rb +2 -0
- data/config/initializers/inflections.rb +2 -0
- data/config/initializers/jazz_fingers.rb +2 -0
- data/config/initializers/mime_types.rb +2 -0
- data/config/initializers/redis_store.rb +2 -0
- data/config/routes.rb +2 -0
- data/lib/better_record.rb +0 -1
- data/lib/better_record/batches.rb +2 -0
- data/lib/better_record/concerns/active_record_extensions/associations_extensions/association_scope_extensions.rb +2 -0
- data/lib/better_record/concerns/active_record_extensions/associations_extensions/belongs_to_polymorphic_extensions.rb +2 -0
- data/lib/better_record/concerns/active_record_extensions/associations_extensions/builder_extensions/association_extensions.rb +2 -0
- data/lib/better_record/concerns/active_record_extensions/attribute_methods/write.rb +44 -0
- data/lib/better_record/concerns/active_record_extensions/base_extensions.rb +4 -1
- data/lib/better_record/concerns/active_record_extensions/reflection_extensions.rb +2 -0
- data/lib/better_record/concerns/controllers/authenticatable.rb +2 -0
- data/lib/better_record/concerns/controllers/sessionable.rb +2 -0
- data/lib/better_record/concerns/controllers/uploadable.rb +2 -0
- data/lib/better_record/encoder.rb +2 -0
- data/lib/better_record/engine.rb +2 -0
- data/lib/better_record/fake_redis.rb +2 -0
- data/lib/better_record/jwt.rb +2 -0
- data/lib/better_record/migration.rb +2 -0
- data/lib/better_record/polymorphic_override.rb +2 -0
- data/lib/better_record/railtie.rb +2 -0
- data/lib/better_record/relation.rb +2 -0
- data/lib/better_record/rspec/expectations.rb +2 -0
- data/lib/better_record/rspec/expectations/write.rb +2 -0
- data/lib/better_record/rspec/extensions.rb +2 -0
- data/lib/better_record/rspec/extensions/boolean_column.rb +2 -0
- data/lib/better_record/rspec/extensions/has_valid_factory.rb +2 -0
- data/lib/better_record/rspec/extensions/optional_column.rb +2 -0
- data/lib/better_record/rspec/extensions/required_column.rb +2 -0
- data/lib/better_record/version.rb +3 -1
- data/lib/generators/better_record/eject_rspec_extensions/eject_rspec_extensions_generator.rb +2 -0
- data/lib/generators/better_record/setup/setup_generator.rb +2 -0
- data/lib/generators/better_record/setup/templates/current.rb +2 -0
- data/lib/generators/better_record/setup/templates/initializer.rb +2 -0
- data/lib/templates/active_record/model/model.rb +2 -0
- data/lib/templates/rspec/model/model_spec.rb +2 -0
- metadata +2 -2
- data/lib/better_record/nullify_blank_attributes.rb +0 -8
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 7cc7df8cadc6ee7f40396d5d405c281fc3d08ac10182db8fb8725b14cfb947b0
|
4
|
+
data.tar.gz: a000455e51c4008ec65661ddc6de35e44b624e72e73a96f2cea03638119877e6
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: ad4e3ea2a8e85df2c45725f01c673cd0679766c53ac78d622ccd54f26225aa7ea7ec1905f37d059ba737dc5eed44f902a649803315a5a7ca3d0d08caa49984d1
|
7
|
+
data.tar.gz: 9e326014afcae6785bc3d17c8313e4551af0669f0d7653bd766fb31835e3b7fcc9e4abe61de4c2604881dc85a38333fb548101cf0282ef0795cf28eb6e810d78
|
@@ -26,6 +26,8 @@ module BetterRecord
|
|
26
26
|
# == Class Methods ========================================================
|
27
27
|
|
28
28
|
# == Instance Methods =====================================================
|
29
|
-
|
29
|
+
def indifferent_attributes
|
30
|
+
attributes.with_indifferent_access
|
31
|
+
end
|
30
32
|
end
|
31
33
|
end
|
data/config/initializers/dkim.rb
CHANGED
data/config/routes.rb
CHANGED
data/lib/better_record.rb
CHANGED
@@ -63,7 +63,6 @@ ActiveSupport.on_load(:active_record) do
|
|
63
63
|
include BetterRecord::Migration
|
64
64
|
end
|
65
65
|
end
|
66
|
-
include BetterRecord::NullifyBlankAttributes
|
67
66
|
end
|
68
67
|
# !centered[## [Men's Results](/assets/pdfs/2018-golf-international-results-male.pdf)--br--[![Mens Results](/assets/images/2018-golf-international-results-male.jpg)](/assets/pdfs/2018-golf-international-results-male.pdf)]
|
69
68
|
# !centered[## [Women's Results](/assets/pdfs/2018-golf-international-results-female.pdf)--br--[![Womens Results](/assets/images/2018-golf-international-results-female.jpg)](/assets/pdfs/2018-golf-international-results-female.pdf)]
|
@@ -0,0 +1,44 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module BetterRecord
|
4
|
+
module AttributeMethods
|
5
|
+
module Write
|
6
|
+
extend ActiveSupport::Concern
|
7
|
+
|
8
|
+
def _write_attribute(attr_name, value)
|
9
|
+
if should_normalize? attr_name
|
10
|
+
super(attr_name, normalize_attribute_value(attr_name, value))
|
11
|
+
else
|
12
|
+
super(attr_name, value)
|
13
|
+
end
|
14
|
+
end
|
15
|
+
|
16
|
+
def normalize_attribute_value(attr_name, value)
|
17
|
+
case type_for_attribute(attr_name)
|
18
|
+
when ActiveRecord::ConnectionAdapters::PostgreSQL::OID::Array
|
19
|
+
[value].flatten.select(&:present?)
|
20
|
+
when ActiveRecord::ConnectionAdapters::PostgreSQL::OID::Jsonb
|
21
|
+
value.presence || {}
|
22
|
+
when ActiveRecord::Type::Boolean
|
23
|
+
Boolean.parse(value)
|
24
|
+
else
|
25
|
+
value.presence
|
26
|
+
end
|
27
|
+
end
|
28
|
+
|
29
|
+
def should_normalize?(attr_name)
|
30
|
+
if !respond_to?(:normalize_columns?) || normalize_columns?
|
31
|
+
if respond_to?(:normalized_columns)
|
32
|
+
normalized_columns.is_a?(Array) ?
|
33
|
+
normalized_columns.include?(attr_name.to_sym) :
|
34
|
+
normalized_columns[attr_name]
|
35
|
+
else
|
36
|
+
true
|
37
|
+
end
|
38
|
+
else
|
39
|
+
false
|
40
|
+
end
|
41
|
+
end
|
42
|
+
end
|
43
|
+
end
|
44
|
+
end
|
@@ -1,3 +1,5 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
1
3
|
require 'active_support/concern'
|
2
4
|
require 'active_record/base'
|
3
5
|
|
@@ -6,6 +8,7 @@ module BetterRecord
|
|
6
8
|
extend ActiveSupport::Concern
|
7
9
|
|
8
10
|
included do
|
11
|
+
include AttributeMethods::Write
|
9
12
|
before_validation :set_booleans
|
10
13
|
end
|
11
14
|
|
@@ -22,7 +25,7 @@ module BetterRecord
|
|
22
25
|
longest_name = 0
|
23
26
|
column_names.each {|nm| longest_name = nm.length if nm.length > longest_name}
|
24
27
|
longest_name += 1
|
25
|
-
str = ''
|
28
|
+
str = ''.dup
|
26
29
|
columns.each do |col|
|
27
30
|
unless col.name == 'id'
|
28
31
|
spaces = "#{' ' * (longest_name - col.name.length)}"
|
data/lib/better_record/engine.rb
CHANGED
data/lib/better_record/jwt.rb
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: better_record
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.8.
|
4
|
+
version: 0.8.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Sampson Crowley
|
@@ -264,6 +264,7 @@ files:
|
|
264
264
|
- lib/better_record/concerns/active_record_extensions/associations_extensions/association_scope_extensions.rb
|
265
265
|
- lib/better_record/concerns/active_record_extensions/associations_extensions/belongs_to_polymorphic_extensions.rb
|
266
266
|
- lib/better_record/concerns/active_record_extensions/associations_extensions/builder_extensions/association_extensions.rb
|
267
|
+
- lib/better_record/concerns/active_record_extensions/attribute_methods/write.rb
|
267
268
|
- lib/better_record/concerns/active_record_extensions/base_extensions.rb
|
268
269
|
- lib/better_record/concerns/active_record_extensions/reflection_extensions.rb
|
269
270
|
- lib/better_record/concerns/controllers/authenticatable.rb
|
@@ -274,7 +275,6 @@ files:
|
|
274
275
|
- lib/better_record/fake_redis.rb
|
275
276
|
- lib/better_record/jwt.rb
|
276
277
|
- lib/better_record/migration.rb
|
277
|
-
- lib/better_record/nullify_blank_attributes.rb
|
278
278
|
- lib/better_record/polymorphic_override.rb
|
279
279
|
- lib/better_record/railtie.rb
|
280
280
|
- lib/better_record/relation.rb
|